diff --git a/application/src/main/data/json/system/widget_bundles/cards.json b/application/src/main/data/json/system/widget_bundles/cards.json index 81cb2fdbb1..9c735ee558 100644 --- a/application/src/main/data/json/system/widget_bundles/cards.json +++ b/application/src/main/data/json/system/widget_bundles/cards.json @@ -24,6 +24,7 @@ "cards.html_value_card", "cards.markdown_card", "cards.simple_card", - "unread_notifications" + "unread_notifications", + "api_usage" ] } \ No newline at end of file diff --git a/application/src/main/data/json/system/widget_types/api_usage.json b/application/src/main/data/json/system/widget_types/api_usage.json new file mode 100644 index 0000000000..e07cbef787 --- /dev/null +++ b/application/src/main/data/json/system/widget_types/api_usage.json @@ -0,0 +1,35 @@ +{ + "fqn": "api_usage", + "name": "API Usage", + "deprecated": false, + "image": "tb-image;/api/images/system/api-usage-widget.svg", + "description": null, + "descriptor": { + "type": "latest", + "sizeX": 7.5, + "sizeY": 3, + "resources": [], + "templateHtml": "\n", + "templateCss": "#container {\n overflow: auto;\n}\n\n.tbDatasource-container {\n margin: 5px;\n padding: 8px;\n}\n\n.tbDatasource-title {\n font-size: 1.200rem;\n font-weight: 500;\n padding-bottom: 10px;\n}\n\n.tbDatasource-table {\n width: 100%;\n box-shadow: 0 0 10px #ccc;\n border-collapse: collapse;\n white-space: nowrap;\n font-size: 1.000rem;\n color: #757575;\n}\n\n.tbDatasource-table td {\n position: relative;\n border-top: 1px solid rgba(0, 0, 0, 0.12);\n border-bottom: 1px solid rgba(0, 0, 0, 0.12);\n padding: 0px 18px;\n box-sizing: border-box;\n}", + "controllerScript": "self.onInit = function() {\n self.ctx.$scope.apiUsageWidget.onInit();\n}\n\nself.typeParameters = function() {\n return {\n hideDataTab: true,\n hideDataSettings: true,\n datasourcesOptional: true,\n previewWidth: '400px',\n previewHeight: '300px'\n };\n}", + "settingsForm": [], + "dataKeySettingsForm": [], + "settingsDirective": "tb-api-usage-widget-settings", + "defaultConfig": "{\"datasources\":[{\"type\":\"function\",\"name\":\"function\",\"dataKeys\":[{\"name\":\"f(x)\",\"type\":\"function\",\"label\":\"Random\",\"color\":\"#2196f3\",\"settings\":{},\"_hash\":0.15479322438769105,\"funcBody\":\"var value = prevValue + Math.random() * 100 - 50;\\nvar multiplier = Math.pow(10, 2 || 0);\\nvar value = Math.round(value * multiplier) / multiplier;\\nif (value < -1000) {\\n\\tvalue = -1000;\\n} else if (value > 1000) {\\n\\tvalue = 1000;\\n}\\nreturn value;\"}]}],\"timewindow\":{\"realtime\":{\"timewindowMs\":60000}},\"showTitle\":true,\"backgroundColor\":\"#fff\",\"color\":\"rgba(0, 0, 0, 0.87)\",\"padding\":\"0\",\"settings\":{},\"title\":\"API usage\",\"decimals\":null,\"showTitleIcon\":false,\"titleTooltip\":\"\",\"dropShadow\":true,\"enableFullscreen\":false,\"widgetStyle\":{},\"widgetCss\":\".tb-widget-header {\\n height: 48px;\\n align-items: center !important;\\n padding: 5px 10px 0 10px;\\n}\",\"titleStyle\":{},\"pageSize\":1024,\"noDataDisplayMessage\":\"\",\"actions\":{\"headerButton\":[{\"name\":\"Go back\",\"buttonType\":\"stroked\",\"showIcon\":true,\"icon\":\"undo\",\"buttonColor\":\"#305680\",\"buttonBorderColor\":\"#0000001F\",\"customButtonStyle\":{\"padding\":\"0 16px\"},\"useShowWidgetActionFunction\":true,\"showWidgetActionFunction\":\"console.log(widgetContext.stateController.getStateId(), widgetContext.settings.targetDashboardState)\\nreturn widgetContext.stateController.getStateId() !== widgetContext.settings.targetDashboardState && widgetContext.settings.targetDashboardState;\",\"type\":\"custom\",\"customFunction\":\"const state = widgetContext.settings.targetDashboardState?.length ? widgetContext.settings.targetDashboardState : 'default';\\nwidgetContext.stateController.updateState(state, widgetContext.stateController.getStateParams(), false);\",\"openInSeparateDialog\":false,\"openInPopover\":false,\"id\":\"1ea1cca6-47d1-3539-d051-9535129fb12b\"}]},\"titleFont\":{\"size\":16,\"sizeUnit\":\"px\",\"family\":null,\"weight\":\"500\",\"style\":null,\"lineHeight\":\"21px\"},\"borderRadius\":\"4px\"}" + }, + "resources": [ + { + "link": "/api/images/system/api-usage-widget.svg", + "title": "\"API Usage\" system widget image", + "type": "IMAGE", + "subType": "IMAGE", + "fileName": "api-usage-widget.svg", + "publicResourceKey": "esDzBtlpFrojaJq7b7BVzilQ1NtPfa0t", + "mediaType": "image/svg+xml", + "data": "PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMDAiIGhlaWdodD0iMTYwIiBmaWxsPSJub25lIj48ZyBjbGlwLXBhdGg9InVybCgjYSkiIGZpbHRlcj0idXJsKCNiKSI+PGcgY2xpcC1wYXRoPSJ1cmwoI2MpIj48cmVjdCB3aWR0aD0iMjAwIiBoZWlnaHQ9IjE2MCIgZmlsbD0iI2ZmZiIgcng9IjMuOTE4Ii8+PHBhdGggZmlsbD0iIzMwNTY4MCIgZmlsbC1vcGFjaXR5PSIuMDYiIGQ9Ik0wIDBoMjAwdjM4LjY1SDB6Ii8+PGcgY2xpcC1wYXRoPSJ1cmwoI2QpIj48cGF0aCBmaWxsPSIjMzA1NjgwIiBkPSJNMTIuMzAxIDE2LjUyNHY1LjgwMWgtLjk5MnYtNS44aC45OTJabTEuODIxIDB2Ljc5N0g5LjUwNHYtLjc5N2g0LjYxOFptMS40OTIgMi4zMTF2My40OWgtLjk2di00LjMxaC45MTdsLjA0My44MlptMS4zMi0uODQ5LS4wMDkuODkzYTIuNTAzIDIuNTAzIDAgMCAwLS4zOS0uMDMyYy0uMTY1IDAtLjMxLjAyNC0uNDM0LjA3MmEuODE4LjgxOCAwIDAgMC0uNTA2LjUxIDEuMzkzIDEuMzkzIDAgMCAwLS4wOC40MWwtLjIyLjAxNmMwLS4yNy4wMjctLjUyMi4wOC0uNzUzLjA1My0uMjMxLjEzMy0uNDM0LjI0LS42MS4xMDgtLjE3NS4yNDQtLjMxMi40MDYtLjQxYTEuMDkgMS4wOSAwIDAgMSAuNTctLjE0NyAxLjE5IDEuMTkgMCAwIDEgLjM0Mi4wNTJabTMuMDMzIDMuNDc1di0yLjA1NmEuODgyLjg4MiAwIDAgMC0uMDgzLS4zOTkuNTg2LjU4NiAwIDAgMC0uMjU1LS4yNTkuODczLjg3MyAwIDAgMC0uNDIzLS4wOTEuOTU3Ljk1NyAwIDAgMC0uNDA2LjA4LjY1Ni42NTYgMCAwIDAtLjI2Ny4yMTUuNTIuNTIgMCAwIDAtLjA5Ni4zMDZoLS45NTZjMC0uMTcuMDQxLS4zMzQuMTI0LS40OTRhMS4zMiAxLjMyIDAgMCAxIC4zNTgtLjQyNiAxLjc5IDEuNzkgMCAwIDEgLjU2Mi0uMjk1Yy4yMTgtLjA3Mi40NjItLjEwNy43MzMtLjEwNy4zMjQgMCAuNjExLjA1NC44Ni4xNjMuMjUzLjEwOS40NTEuMjc0LjU5NC40OTQuMTQ2LjIxOC4yMi40OTEuMjIuODJ2MS45MTdjMCAuMTk3LjAxMy4zNzMuMDQuNTMuMDI5LjE1NC4wNy4yODguMTIzLjQwMnYuMDY0aC0uOTg0YTEuNzA2IDEuNzA2IDAgMCAxLS4xMDgtLjM5NCAzLjIyMyAzLjIyMyAwIDAgMS0uMDM2LS40N1ptLjE0LTEuNzU3LjAwOC41OTNoLS42OWExLjkxIDEuOTEgMCAwIDAtLjQ3LjA1Mi45NjMuOTYzIDAgMCAwLS4zMzguMTQzLjYyMi42MjIgMCAwIDAtLjI3MS41MzhjMCAuMTE1LjAyNi4yMi4wOC4zMTUuMDUzLjA5My4xMy4xNjYuMjMuMjIuMTA0LjA1Mi4yMjkuMDc5LjM3NS4wNzlhMS4wNTcgMS4wNTcgMCAwIDAgLjg2NS0uNDE4LjY1LjY1IDAgMCAwIC4xMzUtLjM0bC4zMS40MjdhMS40NTYgMS40NTYgMCAwIDEtLjE2My4zNSAxLjY5NiAxLjY5NiAwIDAgMS0uMzAyLjM2IDEuNTAzIDEuNTAzIDAgMCAxLTEuMDMyLjM4MmMtLjI4MiAwLS41MzMtLjA1Ni0uNzUzLS4xNjhhMS4zNCAxLjM0IDAgMCAxLS41MTgtLjQ1OCAxLjE4OSAxLjE4OSAwIDAgMS0uMTg3LS42NTdjMC0uMjI4LjA0Mi0uNDMuMTI3LS42MDYuMDg4LS4xNzguMjE1LS4zMjYuMzgzLS40NDYuMTctLjEyLjM3Ny0uMjEuNjIxLS4yNy4yNDUtLjA2NS41MjMtLjA5Ni44MzctLjA5NmguNzUzWm0yLjkyNy0uNzd2My4zOTFoLS45NnYtNC4zMWguOTA0bC4wNTUuOTJabS0uMTcyIDEuMDc2LS4zMS0uMDA0YTIuOCAyLjggMCAwIDEgLjEyNy0uODQgMi4wNyAyLjA3IDAgMCAxIC4zNS0uNjU4Yy4xNTItLjE4My4zMzItLjMyNC41NDItLjQyMi4yMS0uMS40NDQtLjE1MS43MDEtLjE1MS4yMDggMCAuMzk1LjAyOS41NjIuMDg3LjE3LjA1Ni4zMTUuMTQ4LjQzNS4yNzUuMTIyLjEyOC4yMTUuMjk0LjI3OS40OTguMDYzLjIwMi4wOTUuNDUuMDk1Ljc0NXYyLjc4NWgtLjk2NHYtMi43ODljMC0uMjA3LS4wMy0uMzctLjA5Mi0uNDlhLjUxMy41MTMgMCAwIDAtLjI1OS0uMjU5Ljk3MS45NzEgMCAwIDAtLjQxOC0uMDguOTI5LjkyOSAwIDAgMC0uNzczLjM4N2MtLjA4OC4xMi0uMTU1LjI1OC0uMjAzLjQxNGExLjcxMiAxLjcxMiAwIDAgMC0uMDcyLjUwMlptNi4zMjUgMS4xNDhhLjQ4LjQ4IDAgMCAwLS4wNzItLjI2Yy0uMDQ3LS4wNzktLjEzOS0uMTUtLjI3NC0uMjE0YTIuNjcgMi42NyAwIDAgMC0uNTktLjE3NiA1LjA2OCA1LjA2OCAwIDAgMS0uNjMtLjE3OSAxLjk5OCAxLjk5OCAwIDAgMS0uNDg2LS4yNTkuOTkzLjk5MyAwIDAgMS0uNDI2LS44MzdjMC0uMTc1LjAzOS0uMzQuMTE2LS40OTguMDc3LS4xNTYuMTg3LS4yOTQuMzMtLjQxNGExLjYxIDEuNjEgMCAwIDEgLjUyMi0uMjgzYy4yMDctLjA2OS40MzktLjEwMy42OTQtLjEwMy4zNiAwIC42Ny4wNi45MjguMTgzLjI2LjEyLjQ2LjI4My41OTcuNDkuMTM5LjIwNC4yMDguNDM2LjIwOC42OTNoLS45NmMwLS4xMTQtLjAzLS4yMi0uMDg4LS4zMThhLjYxLjYxIDAgMCAwLS4yNTUtLjI0NC44NzQuODc0IDAgMCAwLS40My0uMDk1LjkzNC45MzQgMCAwIDAtLjQxLjA4LjU2Mi41NjIgMCAwIDAtLjI0LjE5OS41MDkuNTA5IDAgMCAwLS4wMzYuNDY2LjQ2LjQ2IDAgMCAwIC4xNDQuMTU1Yy4wNjYuMDQ1LjE1Ni4wODguMjcuMTI4LjExNy4wNC4yNjQuMDc4LjQzOS4xMTUuMzMuMDcuNjEyLjE1OC44NDkuMjY3LjIzOC4xMDcuNDIyLjI0NS41NS40MTUuMTI3LjE2Ny4xOS4zOC4xOS42MzcgMCAuMTkxLS4wNC4zNjctLjEyMy41MjYtLjA4LjE1Ny0uMTk3LjI5My0uMzUuNDFhMS43NjMgMS43NjMgMCAwIDEtLjU1NC4yNjcgMi40OTUgMi40OTUgMCAwIDEtLjcxOC4wOTZjLS4zOSAwLS43Mi0uMDctLjk5Mi0uMjA3LS4yNy0uMTQxLS40NzYtLjMyLS42MTctLjUzOGExLjI3MiAxLjI3MiAwIDAgMS0uMjA3LS42ODVoLjkyOGMuMDEuMTc3LjA2LjMyLjE0Ny40MjYuMDkuMTA0LjIwMi4xOC4zMzUuMjI3LjEzNi4wNDUuMjc1LjA2OC40MTguMDY4LjE3MyAwIC4zMTgtLjAyMy40MzUtLjA2OGEuNjI0LjYyNCAwIDAgMCAuMjY3LS4xOTEuNDU2LjQ1NiAwIDAgMCAuMDkxLS4yOFptMi44OTEtMi4zMTV2NS4xNGgtLjk2di01Ljk2OWguODg0bC4wNzYuODNabTIuODA5IDEuMjg3di4wODRjMCAuMzEzLS4wMzcuNjA0LS4xMTIuODcyLS4wNzEuMjY2LS4xNzkuNDk4LS4zMjIuNjk3LS4xNDEuMTk3LS4zMTUuMzUtLjUyMi40NThhMS41MTkgMS41MTkgMCAwIDEtLjcxNy4xNjRjLS4yNjkgMC0uNTA0LS4wNS0uNzA2LS4xNDhhMS40NDYgMS40NDYgMCAwIDEtLjUwNi0uNDI2IDIuMzE2IDIuMzE2IDAgMCAxLS4zMzQtLjY0NSA0LjEzNiA0LjEzNiAwIDAgMS0uMTc2LS44MjF2LS4zMjNjLjAzNS0uMzE2LjA5My0uNjAzLjE3Ni0uODYuMDg1LS4yNTguMTk2LS40OC4zMzQtLjY2Ni4xMzgtLjE4Ni4zMDctLjMyOS41MDYtLjQzLjItLjEuNDMyLS4xNTEuNjk3LS4xNTEuMjcyIDAgLjUxMi4wNTMuNzIyLjE1OS4yMS4xMDQuMzg2LjI1Mi41My40NDYuMTQzLjE5Mi4yNS40MjMuMzIyLjY5NC4wNzIuMjY4LjEwOC41NjcuMTA4Ljg5NlptLS45Ni4wODR2LS4wODRjMC0uMi0uMDE5LS4zODQtLjA1Ni0uNTU0YTEuNDQ1IDEuNDQ1IDAgMCAwLS4xNzUtLjQ1NC44NTguODU4IDAgMCAwLS4zMDctLjMwMy44MzUuODM1IDAgMCAwLS40NDItLjExMWMtLjE3IDAtLjMxNy4wMjktLjQzOS4wODdhLjg0Ljg0IDAgMCAwLS4zMDYuMjM1Yy0uMDgzLjEwMS0uMTQ3LjIyLS4xOTIuMzU1YTIuMTIyIDIuMTIyIDAgMCAwLS4wOTUuNDM0di43NzNjLjAzMi4xOTEuMDg2LjM2Ny4xNjMuNTI2LjA3Ny4xNi4xODYuMjg3LjMyNy4zODMuMTQzLjA5Mi4zMjYuMTM5LjU1LjEzOS4xNzIgMCAuMzItLjAzNy40NDItLjExMmEuODcxLjg3MSAwIDAgMCAuMjk5LS4zMDZjLjA4LS4xMzMuMTM4LS4yODYuMTc1LS40NTkuMDM3LS4xNzIuMDU2LS4zNTYuMDU2LS41NVptMS43MzkuMDA0di0uMDkyYzAtLjMxLjA0NS0uNTk5LjEzNi0uODY1LjA5LS4yNjguMjItLjUuMzktLjY5Ny4xNzMtLjE5OS4zODItLjM1My42My0uNDYyYTIuMDUgMi4wNSAwIDAgMSAuODQ0LS4xNjdjLjMxNiAwIC41OTguMDU2Ljg0NS4xNjcuMjUuMTA5LjQ2LjI2My42MzMuNDYyLjE3My4xOTcuMzA0LjQzLjM5NS42OTcuMDkuMjY2LjEzNS41NTQuMTM1Ljg2NXYuMDkyYzAgLjMxLS4wNDUuNTk5LS4xMzUuODY0LS4wOS4yNjYtLjIyMi40OTgtLjM5NS42OTctLjE3Mi4xOTctLjM4Mi4zNTEtLjYzLjQ2MmEyLjA2NCAyLjA2NCAwIDAgMS0uODQuMTY0Yy0uMzE2IDAtLjU5OS0uMDU1LS44NDktLjE2NGExLjgyOCAxLjgyOCAwIDAgMS0uNjMtLjQ2MiAyLjA2OSAyLjA2OSAwIDAgMS0uMzk0LS42OTcgMi42NyAyLjY3IDAgMCAxLS4xMzUtLjg2NFptLjk2LS4wOTJ2LjA5MmMwIC4xOTQuMDIuMzc3LjA2LjU1LjA0LjE3Mi4xMDIuMzIzLjE4Ny40NTQuMDg1LjEzLjE5NC4yMzIuMzI3LjMwNi4xMzMuMDc1LjI5LjExMi40NzQuMTEyYS45MTcuOTE3IDAgMCAwIC40NjItLjExMi45MjcuOTI3IDAgMCAwIC4zMjctLjMwNmMuMDg1LS4xMy4xNDctLjI4Mi4xODctLjQ1NS4wNDMtLjE3Mi4wNjQtLjM1NS4wNjQtLjU1di0uMDkxYzAtLjE5MS0uMDIxLS4zNzItLjA2NC0uNTQyYTEuMzkgMS4zOSAwIDAgMC0uMTkxLS40NTguOTEzLjkxMyAwIDAgMC0uNzkzLS40MjYuOTIuOTIgMCAwIDAtLjQ3LjExNS45MjUuOTI1IDAgMCAwLS4zMjMuMzEgMS40NDUgMS40NDUgMCAwIDAtLjE4Ny40NmMtLjA0LjE3LS4wNi4zNS0uMDYuNTQxWm00Ljk2My0xLjI5djMuNDloLS45NnYtNC4zMTJoLjkxNmwuMDQ0LjgyMVptMS4zMTktLjg1LS4wMDguODkzYTIuNTAzIDIuNTAzIDAgMCAwLS4zOS0uMDMyYy0uMTY2IDAtLjMxLjAyNC0uNDM1LjA3MmEuODE4LjgxOCAwIDAgMC0uNTA2LjUxIDEuMzkzIDEuMzkzIDAgMCAwLS4wOC40MWwtLjIxOS4wMTZjMC0uMjcuMDI3LS41MjIuMDgtLjc1My4wNTMtLjIzMS4xMzMtLjQzNC4yMzktLjYxLjEwOS0uMTc1LjI0NC0uMzEyLjQwNi0uNDFhMS4wOSAxLjA5IDAgMCAxIC41Ny0uMTQ3IDEuMTkgMS4xOSAwIDAgMSAuMzQzLjA1MlptMi45MjIuMDI4di43MDJINDMuNHYtLjcwMmgyLjQzWm0tMS43MjktMS4wNTVoLjk2djQuMTc1YS42OC42OCAwIDAgMCAuMDU2LjMwN2MuMDQuMDY5LjA5NC4xMTUuMTYzLjE0LjA3LjAyMy4xNS4wMzUuMjQzLjAzNWExLjQ5MiAxLjQ5MiAwIDAgMCAuMzM5LS4wMzZsLjAwNC43MzNjLS4wOC4wMjQtLjE3My4wNDUtLjI3OS4wNjRhMi4wNDcgMi4wNDcgMCAwIDEtLjM1OS4wMjhjLS4yMiAwLS40MTUtLjAzOS0uNTg1LS4xMTZhLjg2Mi44NjIgMCAwIDEtLjM5OS0uMzg2Yy0uMDk1LS4xNzgtLjE0My0uNDE1LS4xNDMtLjcxVjE2Ljk2Wm01Ljc1NCAxLjkzMnYzLjQzNGgtLjk2di00LjMxaC45MDRsLjA1Ni44NzZabS0uMTU2IDEuMTItLjMyNi0uMDA1YzAtLjI5Ny4wMzctLjU3Mi4xMTEtLjgyNC4wNzUtLjI1My4xODMtLjQ3Mi4zMjctLjY1OC4xNDMtLjE4OC4zMjEtLjMzMy41MzQtLjQzNC4yMTUtLjEwNC40NjMtLjE1NS43NDUtLjE1NS4xOTYgMCAuMzc2LjAyOS41MzguMDg3LjE2NC4wNTYuMzA2LjE0NS40MjYuMjY3LjEyMi4xMjIuMjE1LjI4LjI3OS40Ny4wNjYuMTkyLjEuNDIzLjEuNjk0djIuODcyaC0uOTZ2LTIuNzg5YzAtLjIxLS4wMzMtLjM3NC0uMDk2LS40OTRhLjUzLjUzIDAgMCAwLS4yNjctLjI1NS45NjcuOTY3IDAgMCAwLS40MS0uMDguOTU4Ljk1OCAwIDAgMC0uNDYzLjEwNC44NjkuODY5IDAgMCAwLS4zMDcuMjgzYy0uMDguMTItLjEzOC4yNTgtLjE3NS40MTRhMi4xNyAyLjE3IDAgMCAwLS4wNTYuNTAyWm0yLjY3NC0uMjU2LS40NS4xYzAtLjI2LjAzNS0uNTA2LjEwNy0uNzM3LjA3NC0uMjM0LjE4Mi0uNDM4LjMyMy0uNjE0LjE0My0uMTc4LjMyLS4zMTcuNTMtLjQxOC4yMS0uMS40NS0uMTUxLjcyLS4xNTEuMjIxIDAgLjQxOC4wMy41OS4wOTEuMTc2LjA1OS4zMjQuMTUyLjQ0Ny4yOC4xMjIuMTI3LjIxNS4yOTMuMjc5LjQ5Ny4wNjMuMjAyLjA5NS40NDYuMDk1LjczM3YyLjc5aC0uOTY0di0yLjc5NGMwLS4yMTgtLjAzMi0uMzg2LS4wOTYtLjUwNmEuNDk2LjQ5NiAwIDAgMC0uMjYzLS4yNDcgMS4wNiAxLjA2IDAgMCAwLS40MS0uMDcxLjg4OC44ODggMCAwIDAtLjM5NC4wODMuNzgyLjc4MiAwIDAgMC0uMjgzLjIyNyAxLjAxMyAxLjAxMyAwIDAgMC0uMTc2LjMzMWMtLjAzNy4xMjUtLjA1NS4yNi0uMDU1LjQwNlptNS42NzUgMi42NWMtLjMxOCAwLS42MDctLjA1Mi0uODY0LS4xNTVhMS45MDkgMS45MDkgMCAwIDEtLjY1NC0uNDQzIDEuOTYgMS45NiAwIDAgMS0uNDEtLjY2NSAyLjMzIDIuMzMgMCAwIDEtLjE0My0uODI1di0uMTZjMC0uMzM3LjA0OS0uNjQyLjE0Ny0uOTE2YTIuMDggMi4wOCAwIDAgMSAuNDEtLjdjLjE3Ni0uMTk3LjM4My0uMzQ3LjYyMi0uNDUuMjM5LS4xMDUuNDk4LS4xNTYuNzc3LS4xNTYuMzA4IDAgLjU3OC4wNTIuODA5LjE1NS4yMy4xMDQuNDIyLjI1LjU3My40MzguMTU0LjE4Ni4yNjkuNDA4LjM0My42NjYuMDc3LjI1Ny4xMTUuNTQxLjExNS44NTJ2LjQxaC0zLjMzdi0uNjg5aDIuMzgydi0uMDc1YTEuMzQ3IDEuMzQ3IDAgMCAwLS4xMDMtLjQ4Ni44MjUuODI1IDAgMCAwLS4yODMtLjM2N2MtLjEyOC0uMDkzLS4yOTgtLjE0LS41MS0uMTRhLjg2Ni44NjYgMCAwIDAtLjQyNy4xMDQuODQ0Ljg0NCAwIDAgMC0uMzA2LjI5MSAxLjUzIDEuNTMgMCAwIDAtLjE5MS40NjIgMi41OTcgMi41OTcgMCAwIDAtLjA2NC42MDJ2LjE2YzAgLjE4OC4wMjUuMzYzLjA3NS41MjUuMDU0LjE2LjEzLjI5OS4yMzIuNDE4LjEuMTIuMjIzLjIxNC4zNjYuMjgzLjE0NC4wNjcuMzA3LjEuNDkuMS4yMzEgMCAuNDM3LS4wNDcuNjE4LS4xNC4xOC0uMDkzLjMzNy0uMjI0LjQ3LS4zOTRsLjUwNi40OWExLjgxNCAxLjgxNCAwIDAgMS0uOTA4LjY5IDIuMTcgMi4xNyAwIDAgMS0uNzQyLjExNVptNS4wMzktMS4yNDdhLjQ4MS40ODEgMCAwIDAtLjA3Mi0uMjZjLS4wNDgtLjA3OS0uMTQtLjE1LS4yNzUtLjIxNGEyLjY3IDIuNjcgMCAwIDAtLjU5LS4xNzYgNS4wNjggNS4wNjggMCAwIDEtLjYzLS4xNzkgMS45OTggMS45OTggMCAwIDEtLjQ4NS0uMjU5Ljk5My45OTMgMCAwIDEtLjQyNi0uODM3YzAtLjE3NS4wMzgtLjM0LjExNS0uNDk4LjA3Ny0uMTU2LjE4Ny0uMjk0LjMzLS40MTRhMS42MSAxLjYxIDAgMCAxIC41MjMtLjI4M2MuMjA3LS4wNjkuNDM4LS4xMDMuNjkzLS4xMDMuMzYxIDAgLjY3LjA2LjkyOC4xODMuMjYuMTIuNDYuMjgzLjU5OC40OS4xMzguMjA0LjIwNy40MzYuMjA3LjY5M2gtLjk2YzAtLjExNC0uMDMtLjIyLS4wODgtLjMxOGEuNjEuNjEgMCAwIDAtLjI1NS0uMjQ0Ljg3NC44NzQgMCAwIDAtLjQzLS4wOTUuOTM0LjkzNCAwIDAgMC0uNDEuMDguNTYyLjU2MiAwIDAgMC0uMjQuMTk5LjUwOS41MDkgMCAwIDAtLjAzNS40NjYuNDYuNDYgMCAwIDAgLjE0My4xNTVjLjA2Ni4wNDUuMTU3LjA4OC4yNy4xMjguMTE4LjA0LjI2NC4wNzguNDQuMTE1LjMyOC4wNy42MTEuMTU4Ljg0OC4yNjcuMjM5LjEwNy40MjIuMjQ1LjU1LjQxNS4xMjcuMTY3LjE5LjM4LjE5LjYzNyAwIC4xOTEtLjA0LjM2Ny0uMTIzLjUyNi0uMDguMTU3LS4xOTYuMjkzLS4zNS40MWExLjc2MyAxLjc2MyAwIDAgMS0uNTU0LjI2NyAyLjQ5NSAyLjQ5NSAwIDAgMS0uNzE3LjA5NmMtLjM5IDAtLjcyMS0uMDctLjk5Mi0uMjA3LS4yNzEtLjE0MS0uNDc3LS4zMi0uNjE4LS41MzhhMS4yNzIgMS4yNzIgMCAwIDEtLjIwNy0uNjg1aC45MjhjLjAxLjE3Ny4wNi4zMi4xNDguNDI2LjA5LjEwNC4yMDIuMTguMzM0LjIyNy4xMzYuMDQ1LjI3NS4wNjguNDE5LjA2OC4xNzIgMCAuMzE3LS4wMjMuNDM0LS4wNjhhLjYyNC42MjQgMCAwIDAgLjI2Ny0uMTkxLjQ1Ni40NTYgMCAwIDAgLjA5Mi0uMjhabTQuMzQ0IDBhLjQ4LjQ4IDAgMCAwLS4wNzEtLjI2Yy0uMDQ4LS4wNzktLjE0LS4xNS0uMjc1LS4yMTRhMi42NyAyLjY3IDAgMCAwLS41OS0uMTc2IDUuMDYzIDUuMDYzIDAgMCAxLS42My0uMTc5IDEuOTk4IDEuOTk4IDAgMCAxLS40ODUtLjI1OS45OTMuOTkzIDAgMCAxLS40MjYtLjgzN2MwLS4xNzUuMDM4LS4zNC4xMTUtLjQ5OC4wNzctLjE1Ni4xODctLjI5NC4zMy0uNDE0YTEuNjEgMS42MSAwIDAgMSAuNTIzLS4yODNjLjIwNy0uMDY5LjQzOC0uMTAzLjY5My0uMTAzLjM2MSAwIC42Ny4wNi45MjguMTgzLjI2LjEyLjQ2LjI4My41OTguNDkuMTM4LjIwNC4yMDcuNDM2LjIwNy42OTNoLS45NmMwLS4xMTQtLjAzLS4yMi0uMDg4LS4zMThhLjYxLjYxIDAgMCAwLS4yNTUtLjI0NC44NzQuODc0IDAgMCAwLS40My0uMDk1LjkzNC45MzQgMCAwIDAtLjQxLjA4LjU2Mi41NjIgMCAwIDAtLjI0LjE5OS41MDkuNTA5IDAgMCAwLS4wMzUuNDY2Yy4wMjkuMDU2LjA3Ni4xMDguMTQzLjE1NS4wNjYuMDQ1LjE1Ny4wODguMjcuMTI4LjExOC4wNC4yNjQuMDc4LjQ0LjExNS4zMjkuMDcuNjExLjE1OC44NDguMjY3LjIzOS4xMDcuNDIyLjI0NS41NS40MTUuMTI3LjE2Ny4xOS4zOC4xOS42MzcgMCAuMTkxLS4wNC4zNjctLjEyMy41MjYtLjA4LjE1Ny0uMTk2LjI5My0uMzUuNDFhMS43NjMgMS43NjMgMCAwIDEtLjU1NC4yNjcgMi40OTUgMi40OTUgMCAwIDEtLjcxNy4wOTZjLS4zOSAwLS43MjEtLjA3LS45OTItLjIwNy0uMjcxLS4xNDEtLjQ3Ny0uMzItLjYxOC0uNTM4YTEuMjcyIDEuMjcyIDAgMCAxLS4yMDctLjY4NWguOTI4Yy4wMS4xNzcuMDYuMzIuMTQ4LjQyNi4wOS4xMDQuMjAyLjE4LjMzNC4yMjcuMTM2LjA0NS4yNzUuMDY4LjQxOS4wNjguMTcyIDAgLjMxNy0uMDIzLjQzNC0uMDY4YS42MjQuNjI0IDAgMCAwIC4yNjctLjE5MS40NTYuNDU2IDAgMCAwIC4wOTEtLjI4Wm00LjM1OC4zMDN2LTIuMDU2YS44ODIuODgyIDAgMCAwLS4wODQtLjM5OS41ODYuNTg2IDAgMCAwLS4yNTUtLjI1OS44NzMuODczIDAgMCAwLS40MjItLjA5MS45NTcuOTU3IDAgMCAwLS40MDcuMDguNjU2LjY1NiAwIDAgMC0uMjY3LjIxNS41MTkuNTE5IDAgMCAwLS4wOTUuMzA2aC0uOTU3YzAtLjE3LjA0MS0uMzM0LjEyNC0uNDk0LjA4Mi0uMTU5LjIwMi0uMzAxLjM1OC0uNDI2YTEuNzkgMS43OSAwIDAgMSAuNTYyLS4yOTVjLjIxOC0uMDcyLjQ2Mi0uMTA3LjczMy0uMTA3LjMyNCAwIC42MTEuMDU0Ljg2LjE2My4yNTMuMTA5LjQ1MS4yNzQuNTk1LjQ5NC4xNDYuMjE4LjIxOS40OTEuMjE5LjgydjEuOTE3YzAgLjE5Ny4wMTMuMzczLjA0LjUzLjAyOS4xNTQuMDcuMjg4LjEyMy40MDJ2LjA2NGgtLjk4NGExLjcwMSAxLjcwMSAwIDAgMS0uMTA4LS4zOTQgMy4yMjMgMy4yMjMgMCAwIDEtLjAzNS0uNDdabS4xMzktMS43NTcuMDA4LjU5M2gtLjY5YTEuOTEgMS45MSAwIDAgMC0uNDcuMDUyLjk2My45NjMgMCAwIDAtLjMzOC4xNDMuNjIxLjYyMSAwIDAgMC0uMjcxLjUzOGMwIC4xMTUuMDI2LjIyLjA4LjMxNS4wNTMuMDkzLjEzLjE2Ni4yMy4yMi4xMDQuMDUyLjIzLjA3OS4zNzUuMDc5YTEuMDU3IDEuMDU3IDAgMCAwIC44NjUtLjQxOC42NS42NSAwIDAgMCAuMTM1LS4zNGwuMzExLjQyN2ExLjQ1NiAxLjQ1NiAwIDAgMS0uMTYzLjM1IDEuNjk0IDEuNjk0IDAgMCAxLS4zMDMuMzYgMS41MDIgMS41MDIgMCAwIDEtMS4wMzIuMzgyYy0uMjgyIDAtLjUzMy0uMDU2LS43NTMtLjE2OGExLjMzOSAxLjMzOSAwIDAgMS0uNTE4LS40NTggMS4xODkgMS4xODkgMCAwIDEtLjE4Ny0uNjU3YzAtLjIyOC4wNDItLjQzLjEyNy0uNjA2LjA4OC0uMTc4LjIxNS0uMzI2LjM4My0uNDQ2LjE3LS4xMi4zNzctLjIxLjYyMS0uMjcuMjQ1LS4wNjUuNTI0LS4wOTYuODM3LS4wOTZoLjc1M1ptNC43MzUtMS42OWguODczdjQuMTkyYzAgLjM4Ny0uMDgyLjcxNy0uMjQ3Ljk4OGExLjU4OCAxLjU4OCAwIDAgMS0uNjkuNjE3IDIuNDA1IDIuNDA1IDAgMCAxLTIuMTU1LS4wODggMS40NDMgMS40NDMgMCAwIDEtLjQ2Ni0uNDFsLjQ1LS41NjZjLjE1NC4xODQuMzI0LjMxOC41MS40MDMuMTg2LjA4NS4zODEuMTI3LjU4Ni4xMjcuMjIgMCAuNDA4LS4wNC41NjItLjEyM2EuODM0LjgzNCAwIDAgMCAuMzYyLS4zNTUgMS4xOSAxLjE5IDAgMCAwIC4xMjgtLjU3M1YxOC45OWwuMDg3LS45NzdabS0yLjkyOCAyLjIwNHYtLjA4NGMwLS4zMjcuMDQtLjYyNC4xMi0uODkzLjA4LS4yNy4xOTMtLjUwMy4zNDItLjY5Ny4xNDktLjE5Ni4zMy0uMzQ2LjU0Mi0uNDUuMjEyLS4xMDYuNDUzLS4xNi43MjEtLjE2LjI3OSAwIC41MTcuMDUxLjcxMy4xNTIuMi4xMDEuMzY1LjI0Ni40OTguNDM0LjEzMy4xODYuMjM3LjQxLjMxMS42Ny4wNzcuMjU3LjEzNC41NDQuMTcxLjg2di4yNjdjLS4wMzQuMzA4LS4wOTMuNTktLjE3NS44NDVhMi4zMjggMi4zMjggMCAwIDEtLjMyNy42NjFjLS4xMzUuMTg2LS4zMDIuMzMtLjUwMi40My0uMTk2LjEwMS0uNDI5LjE1Mi0uNjk3LjE1Mi0uMjYzIDAtLjUtLjA1NS0uNzEzLS4xNjRhMS42MjQgMS42MjQgMCAwIDEtLjU0Mi0uNDU4IDIuMTcgMi4xNyAwIDAgMS0uMzQzLS42OTNjLS4wOC0uMjY4LS4xMTktLjU1OS0uMTE5LS44NzJabS45Ni0uMDg0di4wODRjMCAuMTk2LjAxOS4zOC4wNTYuNTUuMDQuMTcuMS4zMi4xOC40NWEuOTQuOTQgMCAwIDAgLjMxLjMwMi45MDQuOTA0IDAgMCAwIC40NS4xMDhjLjIyNiAwIC40MS0uMDQ4LjU1NC0uMTQzYS45MjguOTI4IDAgMCAwIC4zMzUtLjM4N2MuMDgtLjE2NS4xMzUtLjM0OC4xNjctLjU1di0uNzJhMS43NTcgMS43NTcgMCAwIDAtLjEtLjQ0IDEuMTcyIDEuMTcyIDAgMCAwLS4xOTUtLjM1NC44MTMuODEzIDAgMCAwLS4zMS0uMjM5IDEuMDMzIDEuMDMzIDAgMCAwLS40NDMtLjA4Ny44NzcuODc3IDAgMCAwLS40NS4xMTEuOTE1LjkxNSAwIDAgMC0uMzE1LjMwN2MtLjA4LjEzLS4xNC4yODEtLjE4LjQ1NC0uMDM5LjE3My0uMDU5LjM1Ny0uMDU5LjU1NFptNS44ODMgMi4yN2MtLjMxOSAwLS42MDctLjA1LS44NjUtLjE1NGExLjkwOSAxLjkwOSAwIDAgMS0uNjUzLS40NDMgMS45NiAxLjk2IDAgMCAxLS40MS0uNjY1IDIuMzMgMi4zMyAwIDAgMS0uMTQ0LS44MjV2LS4xNmMwLS4zMzcuMDUtLjY0Mi4xNDgtLjkxNmEyLjA4IDIuMDggMCAwIDEgLjQxLS43Yy4xNzUtLjE5Ny4zODMtLjM0Ny42MjItLjQ1LjIzOS0uMTA1LjQ5OC0uMTU2Ljc3Ni0uMTU2LjMwOSAwIC41NzguMDUyLjgxLjE1NS4yMy4xMDQuNDIyLjI1LjU3My40MzguMTU0LjE4Ni4yNjguNDA4LjM0My42NjYuMDc3LjI1Ny4xMTUuNTQxLjExNS44NTJ2LjQxaC0zLjMzdi0uNjg5aDIuMzgydi0uMDc1YTEuMzUxIDEuMzUxIDAgMCAwLS4xMDQtLjQ4Ni44MjYuODI2IDAgMCAwLS4yODItLjM2N2MtLjEyOC0uMDkzLS4yOTgtLjE0LS41MS0uMTRhLjg2Ny44NjcgMCAwIDAtLjQyNy4xMDQuODQ0Ljg0NCAwIDAgMC0uMzA3LjI5MSAxLjUzMyAxLjUzMyAwIDAgMC0uMTkuNDYyIDIuNTk3IDIuNTk3IDAgMCAwLS4wNjQuNjAydi4xNmMwIC4xODguMDI1LjM2My4wNzUuNTI1LjA1My4xNi4xMy4yOTkuMjMxLjQxOC4xMDEuMTIuMjIzLjIxNC4zNjcuMjgzLjE0My4wNjcuMzA3LjEuNDkuMS4yMyAwIC40MzctLjA0Ny42MTctLjE0LjE4MS0uMDkzLjMzOC0uMjI0LjQ3LS4zOTRsLjUwNy40OWExLjgxNCAxLjgxNCAwIDAgMS0uOTA4LjY5IDIuMTcgMi4xNyAwIDAgMS0uNzQyLjExNVptNS4wMzgtMS4yNDZhLjQ4LjQ4IDAgMCAwLS4wNzEtLjI2Yy0uMDQ4LS4wNzktLjE0LS4xNS0uMjc1LS4yMTRhMi42NyAyLjY3IDAgMCAwLS41OS0uMTc2IDUuMDY4IDUuMDY4IDAgMCAxLS42My0uMTc5IDEuOTk4IDEuOTk4IDAgMCAxLS40ODYtLjI1OS45OTMuOTkzIDAgMCAxLS40MjYtLjgzN2MwLS4xNzUuMDM5LS4zNC4xMTYtLjQ5OC4wNzctLjE1Ni4xODctLjI5NC4zMy0uNDE0YTEuNjEgMS42MSAwIDAgMSAuNTIyLS4yODNjLjIwOC0uMDY5LjQzOS0uMTAzLjY5NC0uMTAzLjM2IDAgLjY3LjA2LjkyOC4xODMuMjYuMTIuNDYuMjgzLjU5Ny40OS4xMzkuMjA0LjIwOC40MzYuMjA4LjY5M2gtLjk2YzAtLjExNC0uMDMtLjIyLS4wODgtLjMxOGEuNjEuNjEgMCAwIDAtLjI1NS0uMjQ0Ljg3My44NzMgMCAwIDAtLjQzLS4wOTUuOTM0LjkzNCAwIDAgMC0uNDEuMDguNTYyLjU2MiAwIDAgMC0uMjQuMTk5LjUwOS41MDkgMCAwIDAtLjAzNi40NjYuNDYuNDYgMCAwIDAgLjE0NC4xNTVjLjA2Ni4wNDUuMTU2LjA4OC4yNy4xMjguMTE3LjA0LjI2NC4wNzguNDM5LjExNS4zMy4wNy42MTIuMTU4Ljg0OS4yNjcuMjM5LjEwNy40MjIuMjQ1LjU1LjQxNS4xMjcuMTY3LjE5LjM4LjE5LjYzNyAwIC4xOTEtLjA0LjM2Ny0uMTIzLjUyNi0uMDguMTU3LS4xOTcuMjkzLS4zNS40MWExLjc2MSAxLjc2MSAwIDAgMS0uNTU0LjI2NyAyLjQ5NSAyLjQ5NSAwIDAgMS0uNzE4LjA5NmMtLjM5IDAtLjcyLS4wNy0uOTkyLS4yMDctLjI3LS4xNDEtLjQ3Ni0uMzItLjYxNy0uNTM4YTEuMjczIDEuMjczIDAgMCAxLS4yMDctLjY4NWguOTI4Yy4wMS4xNzcuMDYuMzIuMTQ3LjQyNi4wOS4xMDQuMjAyLjE4LjMzNS4yMjcuMTM2LjA0NS4yNzUuMDY4LjQxOC4wNjguMTczIDAgLjMxOC0uMDIzLjQzNS0uMDY4YS42MjQuNjI0IDAgMCAwIC4yNjctLjE5MS40NTYuNDU2IDAgMCAwIC4wOTEtLjI4WiIvPjwvZz48ZyBjbGlwLXBhdGg9InVybCgjZSkiPjxwYXRoIGZpbGw9IiMwMDAiIGZpbGwtb3BhY2l0eT0iLjU0IiBkPSJNMTA3LjE1MiA2LjY2M3Y1aC0uNjMyVjcuNDVsLTEuMjczLjQ2NXYtLjU3bDEuODA2LS42ODNoLjA5OVptNC4xNjcgMHY1aC0uNjMxVjcuNDVsLTEuMjc0LjQ2NXYtLjU3bDEuODA2LS42ODNoLjA5OVptMi40NjMuMDI3aC42MzlsMS42MjkgNC4wNTMgMS42MjUtNC4wNTNoLjY0MmwtMi4wMjEgNC45NzJoLS40OTlsLTIuMDE1LTQuOTcyWm0tLjIwOCAwaC41NjRsLjA5MiAzLjAzMnYxLjk0aC0uNjU2VjYuNjlabTQuMzg1IDBoLjU2M3Y0Ljk3MmgtLjY1NXYtMS45NGwuMDkyLTMuMDMyWm02LjAyNiAwLTIuMDczIDUuMzk5aC0uNTQzbDIuMDc2LTUuNGguNTRabTMuNjIxIDIuNjA2LS41MDUtLjEzLjI0OS0yLjQ3NmgyLjU1MXYuNTg0aC0yLjAxNWwtLjE1IDEuMzUyYTEuODYgMS44NiAwIDAgMSAuMzQ1LS4xNDcgMS41OCAxLjU4IDAgMCAxIC40ODUtLjA2OGMuMjMgMCAuNDM2LjA0LjYxOC4xMi4xODIuMDc3LjMzNy4xODkuNDY1LjMzNC4xMjkuMTQ2LjIyOC4zMjEuMjk3LjUyNi4wNjguMjA1LjEwMi40MzQuMTAyLjY4NyAwIC4yMzktLjAzMy40NTgtLjA5OS42NTktLjA2NC4yLS4xNi4zNzUtLjI5LjUyNmExLjMxIDEuMzEgMCAwIDEtLjQ5Mi4zNDUgMS43OSAxLjc5IDAgMCAxLS42OTMuMTIyIDEuOTQgMS45NCAwIDAgMS0uNTctLjA4MiAxLjQ3NSAxLjQ3NSAwIDAgMS0uNDc5LS4yNTYgMS40MDEgMS40MDEgMCAwIDEtLjM0MS0uNDMgMS43MjIgMS43MjIgMCAwIDEtLjE2NC0uNjA4aC42MDFjLjAyNy4xODcuMDgyLjM0NC4xNjQuNDcxYS44MDQuODA0IDAgMCAwIC4zMjEuMjljLjEzNC4wNjUuMjkuMDk2LjQ2OC4wOTZhLjk2Ljk2IDAgMCAwIC4zOTktLjA3OC43OTEuNzkxIDAgMCAwIC4yOTQtLjIyNmMuMDgtLjA5OC4xNC0uMjE2LjE4MS0uMzU1LjA0My0uMTM5LjA2NS0uMjk1LjA2NS0uNDY4IDAtLjE1Ny0uMDIyLS4zMDItLjA2NS0uNDM3YS45OS45OSAwIDAgMC0uMTk1LS4zNTEuODQ3Ljg0NyAwIDAgMC0uMzEtLjIzMy45OTguOTk4IDAgMCAwLS40MjQtLjA4NWMtLjIxMiAwLS4zNzIuMDI4LS40ODEuMDg1YTEuODUxIDEuODUxIDAgMCAwLS4zMzIuMjMzWm02LjQ5LS41MTZ2Ljc1OGMwIC40MDgtLjAzNy43NTEtLjEwOSAxLjAzMS0uMDczLjI4LS4xNzguNTA2LS4zMTUuNjc2LS4xMzYuMTcxLS4zMDEuMjk1LS40OTUuMzczYTEuNzYgMS43NiAwIDAgMS0uNjQ5LjExMiAxLjg2IDEuODYgMCAwIDEtLjUyOS0uMDcxIDEuMjU1IDEuMjU1IDAgMCAxLS40MzctLjIzIDEuMzggMS4zOCAwIDAgMS0uMzI4LS40MTYgMi4yNDUgMi4yNDUgMCAwIDEtLjIwOC0uNjIxIDQuNDYxIDQuNDYxIDAgMCAxLS4wNzItLjg1NFY4Ljc4YzAtLjQwOC4wMzYtLjc1LjEwOS0xLjAyNS4wNzUtLjI3NS4xODEtLjQ5Ni4zMTgtLjY2Mi4xMzYtLjE2OS4zLS4yOS40OTItLjM2Mi4xOTMtLjA3My40MDktLjExLjY0OC0uMTEuMTk0IDAgLjM3Mi4wMjUuNTMzLjA3MmExLjE5OSAxLjE5OSAwIDAgMSAuNzYyLjYyNWMuMDkxLjE2Ni4xNi4zNy4yMDguNjEyLjA0OC4yNC4wNzIuNTI0LjA3Mi44NVptLS42MzUuODZ2LS45NjZjMC0uMjIzLS4wMTQtLjQxOS0uMDQxLS41ODdhMS44NDcgMS44NDcgMCAwIDAtLjExMy0uNDM3Ljg2OS44NjkgMCAwIDAtLjE5MS0uMjk0LjY3Ni42NzYgMCAwIDAtLjI2My0uMTY0Ljk1Ljk1IDAgMCAwLS4zMzItLjA1NS44OTUuODk1IDAgMCAwLS4zOTkuMDg2LjcyMS43MjEgMCAwIDAtLjI5NC4yNjNjLS4wNzcuMTItLjEzNi4yNzgtLjE3Ny40NzRhMy41MzggMy41MzggMCAwIDAtLjA2Mi43MTR2Ljk2NmMwIC4yMjQuMDEzLjQyLjAzOC41OTEuMDI3LjE3MS4wNjcuMzE5LjExOS40NDQuMDUzLjEyMy4xMTYuMjI0LjE5Mi4zMDRhLjcxLjcxIDAgMCAwIC4yNTkuMTc4Yy4xLjAzNi4yMTEuMDU0LjMzMS4wNTQuMTU1IDAgLjI5MS0uMDMuNDA3LS4wODhhLjczLjczIDAgMCAwIC4yOS0uMjc3Yy4wOC0uMTI4LjEzOS0uMjkuMTc4LS40ODguMDM4LS4yLjA1OC0uNDQuMDU4LS43MThabTIuMDUzLTIuOTVoLjYzOWwxLjYyOCA0LjA1MyAxLjYyNi00LjA1M2guNjQybC0yLjAyMiA0Ljk3MmgtLjQ5OGwtMi4wMTUtNC45NzJabS0uMjA4IDBoLjU2M2wuMDkyIDMuMDMydjEuOTRoLS42NTVWNi42OVptNC4zODQgMGguNTY0djQuOTcyaC0uNjU2di0xLjk0bC4wOTItMy4wMzJaIi8+PGcgZmlsbD0iIzE5ODAzOCIgY2xpcC1wYXRoPSJ1cmwoI2YpIj48cmVjdCB3aWR0aD0iODYuMDEyIiBoZWlnaHQ9IjQuNjYzIiB4PSIxMDQuNjYzIiB5PSIxNi45OTMiIGZpbGwtb3BhY2l0eT0iLjA2IiByeD0iMi4zMzEiLz48cGF0aCBkPSJNMTA0LjY2MyAxNS44MjdoMjYuMDEydjYuOTk0aC0yNi4wMTJ6Ii8+PC9nPjxwYXRoIGZpbGw9IiMxOTgwMzgiIGQ9Ik0xMDguMzk5IDMwLjQ1MXYuNTM2aC0yLjYzM3YtLjUzNmgyLjYzM1ptLTIuNS00LjQzNnY0Ljk3MmgtLjY1OXYtNC45NzJoLjY1OVptMi4xNTEgMi4xMzh2LjUzNmgtMi4yODR2LS41MzZoMi4yODRabS4zMTQtMi4xMzh2LjU0aC0yLjU5OHYtLjU0aDIuNTk4Wm0xLjYyIDIuMDY2djIuOTA2aC0uNjMydi0zLjY5NWguNTk4bC4wMzQuNzlabS0uMTUuOTE5LS4yNjMtLjAxYTIuMjEgMi4yMSAwIDAgMSAuMTEzLS43Yy4wNzItLjIxNy4xNzUtLjQwNS4zMDctLjU2NGExLjM2OSAxLjM2OSAwIDAgMSAxLjA4Mi0uNTAyYy4xODMgMCAuMzQ2LjAyNS40OTIuMDc1LjE0Ni4wNDguMjcuMTI1LjM3Mi4yMzIuMTA1LjEwNy4xODUuMjQ2LjIzOS40MTcuMDU1LjE2OC4wODIuMzc1LjA4Mi42MTh2Mi40MjFoLS42MzVWMjguNTZjMC0uMTkzLS4wMjgtLjM0OC0uMDg1LS40NjRhLjUyNi41MjYgMCAwIDAtLjI0OS0uMjU2Ljg5OS44OTkgMCAwIDAtLjQwMy0uMDgyLjk0Ljk0IDAgMCAwLS43NjIuMzcyYy0uMDkxLjExNi0uMTYzLjI1LS4yMTUuNC0uMDUuMTQ4LS4wNzUuMzA1LS4wNzUuNDdabTUuNzk2IDEuMzU1di0xLjkwMmEuNzczLjc3MyAwIDAgMC0uMDg5LS4zNzkuNTgxLjU4MSAwIDAgMC0uMjU5LS4yNTIuOTQ2Ljk0NiAwIDAgMC0uNDMxLS4wOWMtLjE1OSAwLS4yOTkuMDI4LS40Mi4wODNhLjc0Ljc0IDAgMCAwLS4yOC4yMTUuNDcyLjQ3MiAwIDAgMC0uMDk5LjI4N2gtLjYzMmEuODQuODQgMCAwIDEgLjEwMy0uMzkzIDEuMTQgMS4xNCAwIDAgMSAuMjk0LS4zNTJjLjEyOS0uMTA3LjI4NC0uMTkuNDY0LS4yNTIuMTgyLS4wNjQuMzg1LS4wOTYuNjA4LS4wOTYuMjY4IDAgLjUwNS4wNDYuNzEuMTM3LjIwNy4wOS4zNjkuMjI4LjQ4NS40MTMuMTE4LjE4Mi4xNzguNDEuMTc4LjY4NnYxLjcyMWMwIC4xMjMuMDEuMjU0LjAzLjM5My4wMjMuMTM5LjA1Ni4yNTguMDk5LjM1OXYuMDU0aC0uNjU5YTEuMTY1IDEuMTY1IDAgMCAxLS4wNzUtLjI5IDIuMzY3IDIuMzY3IDAgMCAxLS4wMjctLjM0MVptLjEwOS0xLjYwOC4wMDcuNDQ0aC0uNjM5Yy0uMTc5IDAtLjM0LjAxNS0uNDgxLjA0NC0uMTQxLjAyOC0uMjYuMDctLjM1NS4xMjdhLjU3MS41NzEgMCAwIDAtLjI5NC41MTJjMCAuMTE2LjAyNi4yMjIuMDc5LjMxOGEuNTcyLjU3MiAwIDAgMCAuMjM1LjIyOC44NTYuODU2IDAgMCAwIC4zOTMuMDgyIDEuMDcxIDEuMDcxIDAgMCAwIC44NjQtLjQyNC42MzguNjM4IDAgMCAwIC4xNDMtLjM0NGwuMjcuMzA0YS45MS45MSAwIDAgMS0uMTMuMzE3IDEuNTExIDEuNTExIDAgMCAxLS43LjU5OCAxLjM1NCAxLjM1NCAwIDAgMS0uNTM5LjEwM2MtLjI1MSAwLS40Ny0uMDUtLjY1OS0uMTQ3YTEuMTE5IDEuMTE5IDAgMCAxLS40MzctLjM5MyAxLjAzNSAxLjAzNSAwIDAgMS0uMTU0LS41NTdjMC0uMTk4LjAzOS0uMzcyLjExNi0uNTIyLjA3Ny0uMTUzLjE4OS0uMjc5LjMzNS0uMzguMTQ1LS4xMDIuMzIxLS4xNzkuNTI2LS4yMzEuMjA0LS4wNTMuNDMzLS4wNzkuNjg2LS4wNzloLjczNFptMS43NDYtMy4wMDVoLjYzNXY0LjUyOGwtLjA1NC43MTdoLS41ODF2LTUuMjQ1Wm0zLjEzMiAzLjM2N3YuMDcyYzAgLjI2OC0uMDMyLjUxOC0uMDk2Ljc0OGExLjg0NCAxLjg0NCAwIDAgMS0uMjguNTk0Yy0uMTIzLjE2OC0uMjczLjMtLjQ1MS4zOTMtLjE3Ny4wOTMtLjM4MS4xNC0uNjExLjE0LS4yMzUgMC0uNDQxLS4wNC0uNjE4LS4xMmExLjIyIDEuMjIgMCAwIDEtLjQ0NC0uMzUyIDEuNzkyIDEuNzkyIDAgMCAxLS4yOS0uNTUzIDMuNDQgMy40NCAwIDAgMS0uMTQ3LS43M3YtLjMxNWMuMDI3LS4yNzMuMDc2LS41MTguMTQ3LS43MzQuMDcyLS4yMTYuMTY5LS40LjI5LS41NTMuMTIxLS4xNTUuMjY5LS4yNzIuNDQ0LS4zNTIuMTc1LS4wODIuMzc5LS4xMjMuNjExLS4xMjMuMjMyIDAgLjQzOC4wNDYuNjE4LjEzNy4xOC4wODguMzMuMjE2LjQ1MS4zODIuMTIzLjE2Ni4yMTYuMzY2LjI4LjU5OC4wNjQuMjMuMDk2LjQ4Ni4wOTYuNzY4Wm0tLjYzNi4wNzJ2LS4wNzJhMi41MiAyLjUyIDAgMCAwLS4wNTEtLjUxOSAxLjM0NCAxLjM0NCAwIDAgMC0uMTY0LS40My44MTUuODE1IDAgMCAwLS4yOTctLjI5NC44NzcuODc3IDAgMCAwLS40NTQtLjExLjk5MS45OTEgMCAwIDAtLjQxNy4wODMuOS45IDAgMCAwLS4yOTcuMjIyIDEuMTY2IDEuMTY2IDAgMCAwLS4yMDEuMzE0Yy0uMDUuMTE2LS4wODguMjM3LS4xMTMuMzYydi44MjNjLjAzNy4xNi4wOTYuMzEzLjE3OC40Ni4wODQuMTQ3LjE5Ni4yNjYuMzM0LjM2YS45My45MyAwIDAgMCAuNTIzLjE0Ljg3NC44NzQgMCAwIDAgLjQzNy0uMTAzLjgyMy44MjMgMCAwIDAgLjI5Ny0uMjljLjA3OC0uMTIzLjEzNC0uMjY1LjE3MS0uNDI3LjAzNi0uMTYyLjA1NC0uMzM1LjA1NC0uNTJabTIuMzU0LTMuNDR2NS4yNDZoLS42MzV2LTUuMjQ1aC42MzVabTIuNzgxIDUuMzE1Yy0uMjU3IDAtLjQ5MS0uMDQ0LS43LS4xM2ExLjU4NSAxLjU4NSAwIDAgMS0uNTM2LS4zNzIgMS42NjEgMS42NjEgMCAwIDEtLjM0Mi0uNTY3IDIuMDk1IDIuMDk1IDAgMCAxLS4xMTktLjcxN3YtLjE0NGMwLS4zLjA0NC0uNTY4LjEzMy0uODAyLjA4OS0uMjM3LjIwOS0uNDM4LjM2Mi0uNjAxYTEuNTQgMS41NCAwIDAgMSAuNTE5LS4zNzNjLjE5NC0uMDg0LjM5NC0uMTI2LjYwMS0uMTI2LjI2NCAwIC40OTIuMDQ2LjY4My4xMzcuMTk0LjA5LjM1Mi4yMTguNDc1LjM4Mi4xMjMuMTYyLjIxNC4zNTMuMjczLjU3NC4wNTkuMjE4LjA4OS40NTcuMDg5LjcxN3YuMjgzaC0yLjc2di0uNTE1aDIuMTI4di0uMDQ4YTEuNTUgMS41NSAwIDAgMC0uMTAzLS40NzguODQ3Ljg0NyAwIDAgMC0uMjczLS4zODNjLS4xMjUtLjEtLjI5Ni0uMTUtLjUxMi0uMTVhLjg2MS44NjEgMCAwIDAtLjcwNy4zNTkgMS4zMzMgMS4zMzMgMCAwIDAtLjIwMS40MzMgMi4xOSAyLjE5IDAgMCAwLS4wNzIuNTkxdi4xNDRjMCAuMTc1LjAyNC4zNC4wNzIuNDk1LjA1LjE1Mi4xMjEuMjg3LjIxNS40MDMuMDk1LjExNi4yMS4yMDcuMzQ1LjI3My4xMzYuMDY2LjI5MS4wOTkuNDY0LjA5OS4yMjMgMCAuNDEyLS4wNDYuNTY3LS4xMzcuMTU1LS4wOS4yOS0uMjEyLjQwNi0uMzY1bC4zODMuMzA0Yy0uMDguMTItLjE4MS4yMzYtLjMwNC4zNDUtLjEyMy4xMS0uMjc0LjE5OC0uNDU0LjI2NmExLjc2IDEuNzYgMCAwIDEtLjYzMi4xMDNabTQuNzM3LS43ODZ2LTQuNTI4aC42MzZ2NS4yNDVoLS41ODFsLS4wNTUtLjcxN1ptLTIuNDg2LTEuMDl2LS4wN2MwLS4yODMuMDM1LS41NC4xMDMtLjc3LjA3LS4yMzIuMTY5LS40My4yOTctLjU5N2ExLjMxIDEuMzEgMCAwIDEgMS4wNjItLjUyYy4yMzIuMDAxLjQzNS4wNDIuNjA4LjEyNC4xNzUuMDguMzIzLjE5Ny40NDQuMzUyLjEyMy4xNTIuMjIuMzM3LjI5LjU1My4wNzEuMjE2LjEyLjQ2LjE0Ny43MzR2LjMxNGMtLjAyNS4yNzEtLjA3NC41MTUtLjE0Ny43MzEtLjA3LjIxNi0uMTY3LjQtLjI5LjU1M2ExLjIyIDEuMjIgMCAwIDEtLjQ0NC4zNTJjLS4xNzUuMDgtLjM4LjEyLS42MTUuMTItLjIxNiAwLS40MTQtLjA0Ny0uNTk0LS4xNGExLjQwMiAxLjQwMiAwIDAgMS0uNDYxLS4zOTMgMS44OTEgMS44OTEgMCAwIDEtLjI5Ny0uNTk0IDIuNjI3IDIuNjI3IDAgMCAxLS4xMDMtLjc0OFptLjYzNi0uMDd2LjA3YzAgLjE4NS4wMTguMzU4LjA1NC41Mi4wMzkuMTYyLjA5OC4zMDQuMTc4LjQyNy4wNzkuMTIzLjE4MS4yMi4zMDQuMjkuMTIzLjA2OC4yNy4xMDIuNDQuMTAyLjIxIDAgLjM4Mi0uMDQ0LjUxNi0uMTMzYS45OS45OSAwIDAgMCAuMzI4LS4zNTFjLjA4Mi0uMTQ2LjE0NS0uMzA0LjE5MS0uNDc1di0uODIzYTEuNzY1IDEuNzY1IDAgMCAwLS4xMi0uMzYyIDEuMTEgMS4xMSAwIDAgMC0uMTk4LS4zMTQuODQzLjg0MyAwIDAgMC0uMjk3LS4yMjIuOTYzLjk2MyAwIDAgMC0uNDEzLS4wODIuODczLjg3MyAwIDAgMC0uNDQ3LjEwOS44NjYuODY2IDAgMCAwLS4zMDQuMjk0Yy0uMDguMTIzLS4xMzkuMjY2LS4xNzguNDNhMi4zODQgMi4zODQgMCAwIDAtLjA1NC41MlpNMTg2LjAxMiAyNS4xMDJhMy44ODYgMy44ODYgMCAwIDAgMCA3Ljc3IDMuODg3IDMuODg3IDAgMCAwIDMuODg2LTMuODg1IDMuODg3IDMuODg3IDAgMCAwLTMuODg2LTMuODg1Wm0tLjc3NyA1LjgyOC0xLjk0My0xLjk0My41NDgtLjU0OCAxLjM5NSAxLjM5MSAyLjk0OS0yLjk0OS41NDguNTUyLTMuNDk3IDMuNDk3WiIvPjwvZz48cGF0aCBmaWxsPSIjMzA1NjgwIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0yMDAgMzkuMjMzSDB2LS41ODNoMjAwdi41ODNaIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiLz48ZyBjbGlwLXBhdGg9InVybCgjZykiPjxwYXRoIGZpbGw9IiMzMDU2ODAiIGQ9Ik0xMi4zMDEgNDkuNzU4djUuOGgtLjk5MnYtNS44aC45OTJabTEuODIxIDB2Ljc5Nkg5LjUwNHYtLjc5Nmg0LjYxOFptMS40OTIgMi4zMXYzLjQ5aC0uOTZ2LTQuMzFoLjkxN2wuMDQzLjgyWm0xLjMyLS44NDgtLjAwOS44OTJhMi41MDMgMi41MDMgMCAwIDAtLjM5LS4wMzJjLS4xNjUgMC0uMzEuMDI0LS40MzQuMDcyYS44MTguODE4IDAgMCAwLS41MDYuNTEgMS4zOTMgMS4zOTMgMCAwIDAtLjA4LjQxbC0uMjIuMDE2YzAtLjI3LjAyNy0uNTIyLjA4LS43NTMuMDUzLS4yMy4xMzMtLjQzNC4yNC0uNjEuMTA4LS4xNzQuMjQ0LS4zMTEuNDA2LS40MWExLjA5IDEuMDkgMCAwIDEgLjU3LS4xNDcgMS4xOSAxLjE5IDAgMCAxIC4zNDIuMDUyWm0zLjAzMyAzLjQ3NHYtMi4wNTZhLjg4Mi44ODIgMCAwIDAtLjA4My0uMzk4LjU4Ni41ODYgMCAwIDAtLjI1NS0uMjYuODcyLjg3MiAwIDAgMC0uNDIzLS4wOS45NTcuOTU3IDAgMCAwLS40MDYuMDc5LjY1Ni42NTYgMCAwIDAtLjI2Ny4yMTUuNTIuNTIgMCAwIDAtLjA5Ni4zMDdoLS45NTZjMC0uMTcuMDQxLS4zMzUuMTI0LS40OTRhMS4zMiAxLjMyIDAgMCAxIC4zNTgtLjQyNiAxLjc5IDEuNzkgMCAwIDEgLjU2Mi0uMjk1Yy4yMTgtLjA3Mi40NjItLjEwOC43MzMtLjEwOC4zMjQgMCAuNjExLjA1NC44Ni4xNjMuMjUzLjExLjQ1MS4yNzQuNTk0LjQ5NC4xNDYuMjE4LjIyLjQ5Mi4yMi44MjF2MS45MTdjMCAuMTk2LjAxMy4zNzMuMDQuNTMuMDI5LjE1My4wNy4yODguMTIzLjQwMnYuMDY0aC0uOTg0YTEuNzA2IDEuNzA2IDAgMCAxLS4xMDgtLjM5NSAzLjIyMyAzLjIyMyAwIDAgMS0uMDM2LS40N1ptLjE0LTEuNzU3LjAwOC41OTRoLS42OWExLjkxIDEuOTEgMCAwIDAtLjQ3LjA1Mi45NjMuOTYzIDAgMCAwLS4zMzguMTQzLjYyMi42MjIgMCAwIDAtLjI3MS41MzhjMCAuMTE0LjAyNi4yMTkuMDguMzE0LjA1My4wOTMuMTMuMTY2LjIzLjIyLjEwNC4wNTMuMjI5LjA4LjM3NS4wOGExLjA1NyAxLjA1NyAwIDAgMCAuODY1LS40MTkuNjUuNjUgMCAwIDAgLjEzNS0uMzM5bC4zMS40MjdhMS40NTYgMS40NTYgMCAwIDEtLjE2My4zNSAxLjY5NiAxLjY5NiAwIDAgMS0uMzAyLjM1OSAxLjUwMyAxLjUwMyAwIDAgMS0xLjAzMi4zODJjLS4yODIgMC0uNTMzLS4wNTUtLjc1My0uMTY3YTEuMzQgMS4zNCAwIDAgMS0uNTE4LS40NTggMS4xODkgMS4xODkgMCAwIDEtLjE4Ny0uNjU4YzAtLjIyOC4wNDItLjQzLjEyNy0uNjA1LjA4OC0uMTc4LjIxNS0uMzI3LjM4My0uNDQ2LjE3LS4xMi4zNzctLjIxLjYyMS0uMjcxLjI0NS0uMDY0LjUyMy0uMDk2LjgzNy0uMDk2aC43NTNabTIuOTI3LS43Njl2My4zOWgtLjk2di00LjMxaC45MDRsLjA1NS45MlptLS4xNzIgMS4wNzYtLjMxLS4wMDRhMi44IDIuOCAwIDAgMSAuMTI3LS44NCAyLjA3IDIuMDcgMCAwIDEgLjM1LS42NThjLjE1Mi0uMTgzLjMzMi0uMzI0LjU0Mi0uNDIyLjIxLS4xMDIuNDQ0LS4xNTIuNzAxLS4xNTIuMjA4IDAgLjM5NS4wMy41NjIuMDg4LjE3LjA1Ni4zMTUuMTQ3LjQzNS4yNzUuMTIyLjEyNy4yMTUuMjkzLjI3OS40OTguMDYzLjIwMS4wOTUuNDUuMDk1Ljc0NXYyLjc4NWgtLjk2NHYtMi43OWMwLS4yMDYtLjAzLS4zNy0uMDkyLS40OWEuNTEzLjUxMyAwIDAgMC0uMjU5LS4yNTguOTcxLjk3MSAwIDAgMC0uNDE4LS4wOC45MjkuOTI5IDAgMCAwLS43NzMuMzg2Yy0uMDg4LjEyLS4xNTUuMjU4LS4yMDMuNDE1YTEuNzEyIDEuNzEyIDAgMCAwLS4wNzIuNTAyWm02LjMyNSAxLjE0N2EuNDguNDggMCAwIDAtLjA3Mi0uMjU5Yy0uMDQ3LS4wOC0uMTM5LS4xNTEtLjI3NC0uMjE1YTIuNjY0IDIuNjY0IDAgMCAwLS41OS0uMTc1IDUuMDY4IDUuMDY4IDAgMCAxLS42My0uMTggMS45OTggMS45OTggMCAwIDEtLjQ4Ni0uMjU4Ljk5My45OTMgMCAwIDEtLjQyNi0uODM3YzAtLjE3NS4wMzktLjM0MS4xMTYtLjQ5OC4wNzctLjE1Ny4xODctLjI5NS4zMy0uNDE1YTEuNjEgMS42MSAwIDAgMSAuNTIyLS4yODJjLjIwNy0uMDcuNDM5LS4xMDQuNjk0LS4xMDQuMzYgMCAuNjcuMDYxLjkyOC4xODMuMjYuMTIuNDYuMjgzLjU5Ny40OS4xMzkuMjA1LjIwOC40MzYuMjA4LjY5NGgtLjk2YzAtLjExNS0uMDMtLjIyLS4wODgtLjMyYS42MS42MSAwIDAgMC0uMjU1LS4yNDIuODc0Ljg3NCAwIDAgMC0uNDMtLjA5Ni45MzQuOTM0IDAgMCAwLS40MS4wOC41NjIuNTYyIDAgMCAwLS4yNC4yLjUwOS41MDkgMCAwIDAtLjAzNi40NjUuNDYuNDYgMCAwIDAgLjE0NC4xNTZjLjA2Ni4wNDUuMTU2LjA4Ny4yNy4xMjcuMTE3LjA0LjI2NC4wNzguNDM5LjExNi4zMy4wNjkuNjEyLjE1OC44NDkuMjY3LjIzOC4xMDYuNDIyLjI0NC41NS40MTQuMTI3LjE2Ny4xOS4zOC4xOS42MzcgMCAuMTkyLS4wNC4zNjctLjEyMy41MjYtLjA4LjE1Ny0uMTk3LjI5NC0uMzUuNDFhMS43NjMgMS43NjMgMCAwIDEtLjU1NC4yNjggMi40OTUgMi40OTUgMCAwIDEtLjcxOC4wOTVjLS4zOSAwLS43Mi0uMDY5LS45OTItLjIwNy0uMjctLjE0LS40NzYtLjMyLS42MTctLjUzOGExLjI3MiAxLjI3MiAwIDAgMS0uMjA3LS42ODVoLjkyOGMuMDEuMTc4LjA2LjMyLjE0Ny40MjYuMDkuMTA0LjIwMi4xOC4zMzUuMjI3LjEzNi4wNDYuMjc1LjA2OC40MTguMDY4LjE3MyAwIC4zMTgtLjAyMy40MzUtLjA2OGEuNjI0LjYyNCAwIDAgMCAuMjY3LS4xOS40NTYuNDU2IDAgMCAwIC4wOTEtLjI4Wm0yLjg5MS0yLjMxNHY1LjEzOWgtLjk2di01Ljk2OGguODg0bC4wNzYuODI5Wm0yLjgwOSAxLjI4NnYuMDg0YzAgLjMxMy0uMDM3LjYwNC0uMTEyLjg3Mi0uMDcxLjI2Ni0uMTc5LjQ5OC0uMzIyLjY5OC0uMTQxLjE5Ni0uMzE1LjM0OS0uNTIyLjQ1OGExLjUxOSAxLjUxOSAwIDAgMS0uNzE3LjE2M2MtLjI2OSAwLS41MDQtLjA0OS0uNzA2LS4xNDdhMS40NDYgMS40NDYgMCAwIDEtLjUwNi0uNDI2IDIuMzE2IDIuMzE2IDAgMCAxLS4zMzQtLjY0NiA0LjEzNiA0LjEzNiAwIDAgMS0uMTc2LS44MnYtLjMyM2MuMDM1LS4zMTYuMDkzLS42MDMuMTc2LS44Ni4wODUtLjI1OC4xOTYtLjQ4LjMzNC0uNjY2LjEzOC0uMTg2LjMwNy0uMzMuNTA2LS40My4yLS4xMDIuNDMyLS4xNTIuNjk3LS4xNTIuMjcyIDAgLjUxMi4wNTMuNzIyLjE2LjIxLjEwMy4zODYuMjUyLjUzLjQ0Ni4xNDMuMTkuMjUuNDIyLjMyMi42OTMuMDcyLjI2OC4xMDguNTY3LjEwOC44OTZabS0uOTYuMDg0di0uMDg0YzAtLjE5OS0uMDE5LS4zODMtLjA1Ni0uNTUzYTEuNDQ3IDEuNDQ3IDAgMCAwLS4xNzUtLjQ1NS44NTkuODU5IDAgMCAwLS4zMDctLjMwMi44MzUuODM1IDAgMCAwLS40NDItLjExMmMtLjE3IDAtLjMxNy4wMy0uNDM5LjA4OGEuODQxLjg0MSAwIDAgMC0uMzA2LjIzNWMtLjA4My4xLS4xNDcuMjE5LS4xOTIuMzU0YTIuMTIyIDIuMTIyIDAgMCAwLS4wOTUuNDM1di43NzNjLjAzMi4xOS4wODYuMzY2LjE2My41MjUuMDc3LjE2LjE4Ni4yODcuMzI3LjM4My4xNDMuMDkzLjMyNi4xNC41NS4xNC4xNzIgMCAuMzItLjAzOC40NDItLjExMmEuODcxLjg3MSAwIDAgMCAuMjk5LS4zMDdjLjA4LS4xMzMuMTM4LS4yODUuMTc1LS40NTguMDM3LS4xNzMuMDU2LS4zNTYuMDU2LS41NVptMS43MzkuMDA0di0uMDkyYzAtLjMxLjA0NS0uNTk5LjEzNi0uODY0LjA5LS4yNjguMjItLjUuMzktLjY5Ny4xNzMtLjIuMzgyLS4zNTQuNjMtLjQ2M2EyLjA1IDIuMDUgMCAwIDEgLjg0NC0uMTY3Yy4zMTYgMCAuNTk4LjA1Ni44NDUuMTY3LjI1LjExLjQ2LjI2My42MzMuNDYzLjE3My4xOTYuMzA0LjQyOC4zOTUuNjk3LjA5LjI2NS4xMzUuNTU0LjEzNS44NjR2LjA5MmMwIC4zMS0uMDQ1LjU5OS0uMTM1Ljg2NC0uMDkuMjY2LS4yMjIuNDk5LS4zOTUuNjk4LS4xNzIuMTk2LS4zODIuMzUtLjYzLjQ2MmEyLjA2NCAyLjA2NCAwIDAgMS0uODQuMTYzYy0uMzE2IDAtLjU5OS0uMDU0LS44NDktLjE2M2ExLjgyOCAxLjgyOCAwIDAgMS0uNjMtLjQ2MiAyLjA2OSAyLjA2OSAwIDAgMS0uMzk0LS42OTcgMi42NyAyLjY3IDAgMCAxLS4xMzUtLjg2NVptLjk2LS4wOTJ2LjA5MmMwIC4xOTQuMDIuMzc3LjA2LjU1LjA0LjE3Mi4xMDIuMzI0LjE4Ny40NTRzLjE5NC4yMzIuMzI3LjMwN2MuMTMzLjA3NC4yOS4xMTEuNDc0LjExMWEuOTE3LjkxNyAwIDAgMCAuNDYyLS4xMTEuOTI3LjkyNyAwIDAgMCAuMzI3LS4zMDdjLjA4NS0uMTMuMTQ3LS4yODIuMTg3LS40NTQuMDQzLS4xNzMuMDY0LS4zNTYuMDY0LS41NXYtLjA5MmMwLS4xOS0uMDIxLS4zNzItLjA2NC0uNTQxYTEuMzkgMS4zOSAwIDAgMC0uMTkxLS40NTkuOTEzLjkxMyAwIDAgMC0uNzkzLS40MjYuOTIuOTIgMCAwIDAtLjQ3LjExNi45MjUuOTI1IDAgMCAwLS4zMjMuMzEgMS40NDUgMS40NDUgMCAwIDAtLjE4Ny40NTljLS4wNC4xNy0uMDYuMzUtLjA2LjU0MVptNC45NjMtMS4yOXYzLjQ5aC0uOTZ2LTQuMzExaC45MTZsLjA0NC44MlptMS4zMTktLjg1LS4wMDguODkzYTIuNTAzIDIuNTAzIDAgMCAwLS4zOS0uMDMyYy0uMTY2IDAtLjMxLjAyNC0uNDM1LjA3MmEuODE4LjgxOCAwIDAgMC0uNTA2LjUxIDEuMzkzIDEuMzkzIDAgMCAwLS4wOC40MWwtLjIxOS4wMTZjMC0uMjcuMDI3LS41MjIuMDgtLjc1My4wNTMtLjIzLjEzMy0uNDM0LjIzOS0uNjEuMTA5LS4xNzQuMjQ0LS4zMTEuNDA2LS40MWExLjA5IDEuMDkgMCAwIDEgLjU3LS4xNDcgMS4xOSAxLjE5IDAgMCAxIC4zNDMuMDUyWm0yLjkyMi4wMjl2LjcwMUg0My40di0uNzAxaDIuNDNabS0xLjcyOS0xLjA1NmguOTZ2NC4xNzVhLjY4LjY4IDAgMCAwIC4wNTYuMzA3Yy4wNC4wNy4wOTQuMTE2LjE2My4xNC4wNy4wMjMuMTUuMDM1LjI0My4wMzVhMS40OTIgMS40OTIgMCAwIDAgLjMzOS0uMDM1bC4wMDQuNzMzYy0uMDguMDI0LS4xNzMuMDQ1LS4yNzkuMDYzYTIuMDQ3IDIuMDQ3IDAgMCAxLS4zNTkuMDI4Yy0uMjIgMC0uNDE1LS4wMzgtLjU4NS0uMTE1YS44NjIuODYyIDAgMCAxLS4zOTktLjM4N2MtLjA5NS0uMTc4LS4xNDMtLjQxNC0uMTQzLS43MDl2LTQuMjM1Wm03LjQyMyA0LjQ3NFY0OS40NGguOTY0djYuMTJoLS44NzJsLS4wOTItLjg5M1ptLTIuODA1LTEuMjE1di0uMDg0YzAtLjMyNi4wMzktLjYyNC4xMTYtLjg5Mi4wNzctLjI3MS4xODgtLjUwNC4zMzQtLjY5N2ExLjQ3IDEuNDcgMCAwIDEgLjUzNC0uNDVjLjIxLS4xMDcuNDQ3LS4xNi43MS0uMTYuMjYgMCAuNDg4LjA1LjY4NS4xNTEuMTk2LjEwMS4zNjQuMjQ2LjUwMi40MzUuMTM4LjE4Ni4yNDguNDA5LjMzLjY3LjA4My4yNTcuMTQxLjU0NC4xNzYuODZ2LjI2N2MtLjAzNS4zMDgtLjA5My41OS0uMTc2Ljg0NGEyLjI2OCAyLjI2OCAwIDAgMS0uMzMuNjYyIDEuNDMgMS40MyAwIDAgMS0uNTA2LjQzIDEuNDkgMS40OSAwIDAgMS0uNjkuMTUxYy0uMjYgMC0uNDk1LS4wNTQtLjcwNS0uMTYzYTEuNTYgMS41NiAwIDAgMS0uNTMtLjQ1OCAyLjE2IDIuMTYgMCAwIDEtLjMzNC0uNjk0IDMuMTUyIDMuMTUyIDAgMCAxLS4xMTYtLjg3MlptLjk2LS4wODR2LjA4NGMwIC4xOTcuMDE4LjM4LjA1Mi41NS4wMzcuMTcuMDk0LjMyLjE3Mi40NWEuODgxLjg4MSAwIDAgMCAuMjk4LjMwMy44ODEuODgxIDAgMCAwIC40NDcuMTA3LjkzNy45MzcgMCAwIDAgLjUzNy0uMTQzLjk4Ljk4IDAgMCAwIC4zMzEtLjM4N2MuMDgyLS4xNjQuMTM4LS4zNDguMTY3LS41NXYtLjcyYTEuNzYxIDEuNzYxIDAgMCAwLS4xLS40MzkgMS4xNzIgMS4xNzIgMCAwIDAtLjE5NC0uMzU0LjgyMy44MjMgMCAwIDAtLjMwNy0uMjQuOTYyLjk2MiAwIDAgMC0uNDI2LS4wODcuODQyLjg0MiAwIDAgMC0uNDQ3LjExMi45MDMuOTAzIDAgMCAwLS4zMDMuMzA2IDEuNTEgMS41MSAwIDAgMC0uMTcuNDU0IDIuNjMzIDIuNjMzIDAgMCAwLS4wNTcuNTU0Wm02LjM5IDEuMzI3di0yLjA1NmEuODgyLjg4MiAwIDAgMC0uMDg1LS4zOTguNTg2LjU4NiAwIDAgMC0uMjU0LS4yNi44NzIuODcyIDAgMCAwLS40MjMtLjA5Ljk1Ni45NTYgMCAwIDAtLjQwNi4wNzkuNjU3LjY1NyAwIDAgMC0uMjY3LjIxNS41Mi41MiAwIDAgMC0uMDk2LjMwN2gtLjk1NmMwLS4xNy4wNDEtLjMzNS4xMjQtLjQ5NC4wODItLjE2LjIwMS0uMzAyLjM1OC0uNDI2LjE1Ny0uMTI1LjM0NC0uMjI0LjU2Mi0uMjk1LjIxOC0uMDcyLjQ2Mi0uMTA4LjczMy0uMTA4LjMyNCAwIC42MS4wNTQuODYuMTYzLjI1My4xMS40NS4yNzQuNTk0LjQ5NC4xNDYuMjE4LjIyLjQ5Mi4yMi44MjF2MS45MTdjMCAuMTk2LjAxMy4zNzMuMDQuNTMuMDI4LjE1My4wNy4yODguMTIzLjQwMnYuMDY0aC0uOTg0YTEuNzAyIDEuNzAyIDAgMCAxLS4xMDgtLjM5NSAzLjIyNCAzLjIyNCAwIDAgMS0uMDM2LS40N1ptLjEzOS0xLjc1Ny4wMDguNTk0aC0uNjlhMS45MSAxLjkxIDAgMCAwLS40Ny4wNTIuOTYzLjk2MyAwIDAgMC0uMzM4LjE0My42MjMuNjIzIDAgMCAwLS4yNzEuNTM4YzAgLjExNC4wMjYuMjE5LjA4LjMxNC4wNTMuMDkzLjEzLjE2Ni4yMy4yMi4xMDQuMDUzLjIyOS4wOC4zNzUuMDhhMS4wNTcgMS4wNTcgMCAwIDAgLjg2NC0uNDE5LjY1Mi42NTIgMCAwIDAgLjEzNi0uMzM5bC4zMS40MjdhMS40NiAxLjQ2IDAgMCAxLS4xNjMuMzUgMS43IDEuNyAwIDAgMS0uMzAyLjM1OSAxLjUwMyAxLjUwMyAwIDAgMS0xLjAzMi4zODJjLS4yODIgMC0uNTMzLS4wNTUtLjc1My0uMTY3YTEuMzQgMS4zNCAwIDAgMS0uNTE4LS40NTggMS4xODkgMS4xODkgMCAwIDEtLjE4OC0uNjU4YzAtLjIyOC4wNDMtLjQzLjEyOC0uNjA1LjA4OC0uMTc4LjIxNS0uMzI3LjM4My0uNDQ2LjE3LS4xMi4zNzctLjIxLjYyMS0uMjcxLjI0NC0uMDY0LjUyMy0uMDk2LjgzNy0uMDk2aC43NTNabTMuOTUtMS42OXYuNzAyaC0yLjQzdi0uNzAxaDIuNDNabS0xLjcyOS0xLjA1NWguOTZ2NC4xNzVhLjY4LjY4IDAgMCAwIC4wNTYuMzA3Yy4wNC4wNy4wOTQuMTE2LjE2My4xNC4wNy4wMjMuMTUuMDM1LjI0My4wMzVhMS40OTIgMS40OTIgMCAwIDAgLjM0LS4wMzVsLjAwMy43MzNjLS4wOC4wMjQtLjE3My4wNDUtLjI3OS4wNjNhMi4wNDcgMi4wNDcgMCAwIDEtLjM1OC4wMjhjLS4yMiAwLS40MTYtLjAzOC0uNTg2LS4xMTVhLjg2Mi44NjIgMCAwIDEtLjM5OC0uMzg3Yy0uMDk2LS4xNzgtLjE0NC0uNDE0LS4xNDQtLjcwOXYtNC4yMzVabTUuMDQ2IDQuNTAydi0yLjA1NmEuODgyLjg4MiAwIDAgMC0uMDgzLS4zOTguNTg2LjU4NiAwIDAgMC0uMjU1LS4yNi44NzIuODcyIDAgMCAwLS40MjMtLjA5Ljk1Ny45NTcgMCAwIDAtLjQwNi4wNzkuNjU2LjY1NiAwIDAgMC0uMjY3LjIxNS41Mi41MiAwIDAgMC0uMDk2LjMwN2gtLjk1NmMwLS4xNy4wNDEtLjMzNS4xMjQtLjQ5NGExLjMyIDEuMzIgMCAwIDEgLjM1OC0uNDI2IDEuNzkgMS43OSAwIDAgMSAuNTYyLS4yOTVjLjIxOC0uMDcyLjQ2Mi0uMTA4LjczMy0uMTA4LjMyNCAwIC42MTEuMDU0Ljg2LjE2My4yNTMuMTEuNDUuMjc0LjU5NC40OTQuMTQ2LjIxOC4yMi40OTIuMjIuODIxdjEuOTE3YzAgLjE5Ni4wMTMuMzczLjA0LjUzLjAyOC4xNTMuMDcuMjg4LjEyMy40MDJ2LjA2NGgtLjk4NGExLjcwNiAxLjcwNiAwIDAgMS0uMTA4LS4zOTUgMy4yMjMgMy4yMjMgMCAwIDEtLjAzNi0uNDdabS4xNC0xLjc1Ny4wMDguNTk0aC0uNjlhMS45MSAxLjkxIDAgMCAwLS40Ny4wNTIuOTYzLjk2MyAwIDAgMC0uMzM4LjE0My42MjIuNjIyIDAgMCAwLS4yNzEuNTM4YzAgLjExNC4wMjYuMjE5LjA4LjMxNC4wNTMuMDkzLjEzLjE2Ni4yMy4yMi4xMDQuMDUzLjIyOS4wOC4zNzUuMDhhMS4wNTcgMS4wNTcgMCAwIDAgLjg2NS0uNDE5LjY1LjY1IDAgMCAwIC4xMzUtLjMzOWwuMzEuNDI3YTEuNDU2IDEuNDU2IDAgMCAxLS4xNjMuMzUgMS42OTYgMS42OTYgMCAwIDEtLjMwMi4zNTkgMS41MDMgMS41MDMgMCAwIDEtMS4wMzIuMzgyYy0uMjgyIDAtLjUzMy0uMDU1LS43NTMtLjE2N2ExLjM0IDEuMzQgMCAwIDEtLjUxOC0uNDU4IDEuMTg5IDEuMTg5IDAgMCAxLS4xODctLjY1OGMwLS4yMjguMDQyLS40My4xMjctLjYwNS4wODgtLjE3OC4yMTUtLjMyNy4zODMtLjQ0Ni4xNy0uMTIuMzc3LS4yMS42MjEtLjI3MS4yNDQtLjA2NC41MjMtLjA5Ni44MzctLjA5NmguNzUzWm0tNTIuODMyIDEwLjE0djUuMTM5aC0uOTZ2LTUuOTY4aC44ODVsLjA3NS44MjlabTIuODEgMS4yODZ2LjA4NGMwIC4zMTMtLjAzOC42MDQtLjExMi44NzMtLjA3Mi4yNjUtLjE4LjQ5OC0uMzIzLjY5Ny0uMTQuMTk2LS4zMTUuMzQ5LS41MjIuNDU4YTEuNTE5IDEuNTE5IDAgMCAxLS43MTcuMTYzYy0uMjY4IDAtLjUwNC0uMDQ5LS43MDUtLjE0N2ExLjQ0NiAxLjQ0NiAwIDAgMS0uNTA2LS40MjYgMi4zMTcgMi4zMTcgMCAwIDEtLjMzNS0uNjQ2IDQuMTUgNC4xNSAwIDAgMS0uMTc1LS44MnYtLjMyM2MuMDM0LS4zMTYuMDkzLS42MDMuMTc1LS44Ni4wODUtLjI1OC4xOTctLjQ4LjMzNS0uNjY2LjEzOC0uMTg2LjMwNi0uMzMuNTA2LS40My4xOTktLjEwMi40MzEtLjE1Mi42OTctLjE1Mi4yNyAwIC41MTEuMDUzLjcyMS4xNi4yMS4xMDMuMzg2LjI1Mi41My40NDYuMTQzLjE5LjI1LjQyMi4zMjMuNjkzLjA3MS4yNjguMTA3LjU2Ny4xMDcuODk2Wm0tLjk2MS4wODR2LS4wODRjMC0uMTk5LS4wMTktLjM4My0uMDU2LS41NTNhMS40NDUgMS40NDUgMCAwIDAtLjE3NS0uNDU1Ljg1OC44NTggMCAwIDAtLjMwNy0uMzAyLjgzNS44MzUgMCAwIDAtLjQ0Mi0uMTEyYy0uMTcgMC0uMzE2LjAzLS40MzguMDg4YS44NC44NCAwIDAgMC0uMzA3LjIzNWMtLjA4Mi4xLS4xNDYuMjE5LS4xOTEuMzU0YTIuMTIyIDIuMTIyIDAgMCAwLS4wOTYuNDM1di43NzNjLjAzMi4xOS4wODYuMzY2LjE2My41MjUuMDc3LjE2LjE4Ni4yODcuMzI3LjM4My4xNDQuMDkzLjMyNy4xNC41NS4xNC4xNzIgMCAuMzItLjAzOC40NDItLjExMmEuODcxLjg3MSAwIDAgMCAuMjk5LS4zMDdjLjA4LS4xMzMuMTM4LS4yODUuMTc1LS40NTguMDM3LS4xNzMuMDU2LS4zNTYuMDU2LS41NVptMS43NC4wMDR2LS4wOTJjMC0uMzEuMDQ0LS41OTkuMTM1LS44NjQuMDktLjI2OC4yMi0uNS4zOS0uNjk3LjE3My0uMi4zODMtLjM1NC42My0uNDYzYTIuMDUgMi4wNSAwIDAgMSAuODQ0LS4xNjdjLjMxNyAwIC41OTguMDU2Ljg0NS4xNjcuMjUuMTEuNDYuMjYzLjYzMy40NjMuMTczLjE5Ni4zMDUuNDI4LjM5NS42OTcuMDkuMjY1LjEzNS41NTQuMTM1Ljg2NHYuMDkyYzAgLjMxLS4wNDUuNTk5LS4xMzUuODY1LS4wOS4yNjUtLjIyMi40OTgtLjM5NS42OTctLjE3Mi4xOTYtLjM4Mi4zNS0uNjI5LjQ2MmEyLjA2NCAyLjA2NCAwIDAgMS0uODQuMTYzYy0uMzE3IDAtLjYtLjA1NC0uODUtLjE2M2ExLjgyNyAxLjgyNyAwIDAgMS0uNjI5LS40NjIgMi4wNjkgMi4wNjkgMCAwIDEtLjM5NC0uNjk4IDIuNjcgMi42NyAwIDAgMS0uMTM2LS44NjRabS45Ni0uMDkydi4wOTJjMCAuMTk0LjAyLjM3Ny4wNi41NWExLjQgMS40IDAgMCAwIC4xODcuNDU0Yy4wODUuMTMuMTk0LjIzMi4zMjYuMzA3LjEzMy4wNzQuMjkxLjExMS40NzQuMTExYS45MTcuOTE3IDAgMCAwIC40NjMtLjExMS45MjcuOTI3IDAgMCAwIC4zMjYtLjMwNyAxLjQgMS40IDAgMCAwIC4xODgtLjQ1NGMuMDQyLS4xNzMuMDYzLS4zNTYuMDYzLS41NXYtLjA5MmMwLS4xOS0uMDIxLS4zNzEtLjA2NC0uNTQxYTEuMzkyIDEuMzkyIDAgMCAwLS4xOS0uNDU5LjkxMy45MTMgMCAwIDAtLjc5NC0uNDI2LjkyLjkyIDAgMCAwLS40Ny4xMTYuOTI0LjkyNCAwIDAgMC0uMzIyLjMxIDEuNDQ3IDEuNDQ3IDAgMCAwLS4xODguNDU5Yy0uMDQuMTctLjA2LjM1LS4wNi41NDFabTUuMDI2LTIuMTExdjQuMzFoLS45NjR2LTQuMzFoLjk2NFptLTEuMDI4LTEuMTMyYzAtLjE0Ni4wNDgtLjI2Ny4xNDMtLjM2MmEuNTQ5LjU0OSAwIDAgMSAuNDA3LS4xNDhjLjE3IDAgLjMwNC4wNS40MDIuMTQ4YS40ODQuNDg0IDAgMCAxIC4xNDguMzYyLjQ4LjQ4IDAgMCAxLS4xNDguMzU5LjU1Mi41NTIgMCAwIDEtLjQwMi4xNDMuNTU3LjU1NyAwIDAgMS0uNDA3LS4xNDMuNDg2LjQ4NiAwIDAgMS0uMTQzLS4zNTlabTMuMTc4IDIuMDUydjMuMzloLS45NnYtNC4zMWguOTA0bC4wNTYuOTJabS0uMTcyIDEuMDc2LS4zMS0uMDA0YTIuOCAyLjggMCAwIDEgLjEyNy0uODQgMi4wNyAyLjA3IDAgMCAxIC4zNS0uNjU4Yy4xNTItLjE4My4zMzMtLjMyNC41NDItLjQyMi4yMS0uMTAyLjQ0NC0uMTUyLjcwMi0uMTUyLjIwNyAwIC4zOTQuMDMuNTYxLjA4OC4xNy4wNTYuMzE1LjE0Ny40MzUuMjc1LjEyMi4xMjcuMjE1LjI5My4yNzkuNDk4LjA2My4yMDEuMDk1LjQ1LjA5NS43NDV2Mi43ODVoLS45NjR2LTIuNzljMC0uMjA2LS4wMy0uMzctLjA5Mi0uNDlhLjUxMy41MTMgMCAwIDAtLjI1OS0uMjU4Ljk3Mi45NzIgMCAwIDAtLjQxOC0uMDguOTI5LjkyOSAwIDAgMC0uNDQyLjEwNC45OTUuOTk1IDAgMCAwLS4zMy4yODIgMS4zNyAxLjM3IDAgMCAwLS4yMDQuNDE1IDEuNzA5IDEuNzA5IDAgMCAwLS4wNzIuNTAyWm01Ljg4My0xLjk5NnYuNzAxaC0yLjQzdi0uNzAxaDIuNDNabS0xLjcyOS0xLjA1NmguOTZ2NC4xNzVjMCAuMTMzLjAxOS4yMzUuMDU2LjMwNy4wNC4wNy4wOTQuMTE2LjE2My4xNC4wNy4wMjQuMTUuMDM1LjI0My4wMzVhMS40OTIgMS40OTIgMCAwIDAgLjMzOS0uMDM1bC4wMDQuNzMzYy0uMDguMDIzLS4xNzMuMDQ1LS4yNzkuMDYzYTIuMDQ3IDIuMDQ3IDAgMCAxLS4zNTguMDI4Yy0uMjIxIDAtLjQxNi0uMDM4LS41ODYtLjExNWEuODYyLjg2MiAwIDAgMS0uMzk5LS4zODdjLS4wOTUtLjE3OC0uMTQzLS40MTQtLjE0My0uNzA5di00LjIzNVptNS4wMzQgNC4yYS40OC40OCAwIDAgMC0uMDcyLS4yNmMtLjA0Ny0uMDgtLjEzOS0uMTUxLS4yNzQtLjIxNWEyLjY2NCAyLjY2NCAwIDAgMC0uNTktLjE3NSA1LjA2MyA1LjA2MyAwIDAgMS0uNjMtLjE4IDEuOTk4IDEuOTk4IDAgMCAxLS40ODYtLjI1OC45OTMuOTkzIDAgMCAxLS40MjYtLjgzN2MwLS4xNzUuMDM5LS4zNDEuMTE2LS40OTguMDc3LS4xNTcuMTg3LS4yOTUuMzMtLjQxNWExLjYxIDEuNjEgMCAwIDEgLjUyMi0uMjgyYy4yMDctLjA3LjQzOS0uMTA0LjY5NC0uMTA0LjM2IDAgLjY3LjA2MS45MjguMTgzLjI2LjEyLjQ2LjI4My41OTcuNDkuMTM5LjIwNS4yMDguNDM2LjIwOC42OTRoLS45NmMwLS4xMTUtLjAzLS4yMi0uMDg4LS4zMmEuNjEuNjEgMCAwIDAtLjI1NS0uMjQyLjg3NC44NzQgMCAwIDAtLjQzLS4wOTYuOTM0LjkzNCAwIDAgMC0uNDEuMDguNTYyLjU2MiAwIDAgMC0uMjQuMi41MDkuNTA5IDAgMCAwLS4wMzYuNDY1Yy4wMy4wNTYuMDc3LjEwOC4xNDQuMTU2LjA2Ni4wNDUuMTU2LjA4Ny4yNy4xMjcuMTE3LjA0LjI2NC4wNzguNDM5LjExNmE0IDQgMCAwIDEgLjg0OC4yNjdjLjI0LjEwNi40MjMuMjQ0LjU1LjQxNC4xMjguMTY3LjE5MS4zOC4xOTEuNjM3IDAgLjE5Mi0uMDQuMzY3LS4xMjMuNTI2LS4wOC4xNTctLjE5Ny4yOTQtLjM1LjQxYTEuNzYzIDEuNzYzIDAgMCAxLS41NTQuMjY4IDIuNDk1IDIuNDk1IDAgMCAxLS43MTguMDk1Yy0uMzkgMC0uNzItLjA2OS0uOTkyLS4yMDctLjI3LS4xNC0uNDc2LS4zMi0uNjE3LS41MzhhMS4yNzMgMS4yNzMgMCAwIDEtLjIwNy0uNjg1aC45MjhjLjAxLjE3OC4wNi4zMi4xNDcuNDI2LjA5LjEwNC4yMDIuMTguMzM1LjIyNy4xMzYuMDQ1LjI3NS4wNjguNDE4LjA2OC4xNzMgMCAuMzE4LS4wMjMuNDM1LS4wNjhhLjYyNC42MjQgMCAwIDAgLjI2Ny0uMTkuNDU2LjQ1NiAwIDAgMCAuMDkxLS4yOFoiLz48L2c+PGcgY2xpcC1wYXRoPSJ1cmwoI2gpIj48cGF0aCBmaWxsPSIjMDAwIiBmaWxsLW9wYWNpdHk9Ii41NCIgZD0iTTEwNy41IDQ1LjkxNmguMDU1di41MzdoLS4wNTVjLS4zMzQgMC0uNjE0LjA1NC0uODQuMTYzYTEuMzc3IDEuMzc3IDAgMCAwLS41MzYuNDM0Yy0uMTMyLjE4LS4yMjcuMzgzLS4yODcuNjA4YTIuNzg5IDIuNzg5IDAgMCAwLS4wODUuNjg2di43MzFjMCAuMjIxLjAyNi40MTcuMDc5LjU4OC4wNTIuMTY4LjEyNC4zMS4yMTUuNDI3YS45NDYuOTQ2IDAgMCAwIC4zMDcuMjYyYy4xMTYuMDYuMjM3LjA5LjM2Mi4wOWEuODg4Ljg4OCAwIDAgMCAuMzg5LS4wODMuODIuODIgMCAwIDAgLjI4Ny0uMjM1Yy4wOC0uMTAzLjE0LS4yMjMuMTgxLS4zNjJhMS42MSAxLjYxIDAgMCAwIC4wNjItLjQ1OGMwLS4xNDgtLjAxOS0uMjktLjA1NS0uNDI3YTEuMTMxIDEuMTMxIDAgMCAwLS4xNjctLjM2OS44MDQuODA0IDAgMCAwLS42ODMtLjM1MS45NzguOTc4IDAgMCAwLS40OTIuMTNjLS4xNS4wODQtLjI3NC4xOTUtLjM3Mi4zMzRhLjg5Ljg5IDAgMCAwLS4xNjQuNDQ3bC0uMzM1LS4wMDNjLjAzMi0uMjU1LjA5MS0uNDcyLjE3OC0uNjUyYTEuMzkgMS4zOSAwIDAgMSAuMzI3LS40NDRjLjEzMy0uMTE2LjI3OS0uMi40NDEtLjI1M2ExLjYzIDEuNjMgMCAwIDEgLjUxOS0uMDgyYy4yNDggMCAuNDYyLjA0Ny42NDIuMTQuMTguMDk0LjMyOC4yMTkuNDQ0LjM3Ni4xMTYuMTU1LjIwMi4zMy4yNTYuNTI2LjA1Ny4xOTMuMDg2LjM5Mi4wODYuNTk3IDAgLjIzNS0uMDMzLjQ1NS0uMDk5LjY2YTEuNTYgMS41NiAwIDAgMS0uMjk4LjU0Yy0uMTI5LjE1NC0uMjkuMjc1LS40ODEuMzYxLS4xOTEuMDg3LS40MTMuMTMtLjY2Ni4xMy0uMjY5IDAtLjUwMy0uMDU1LS43MDMtLjE2NGExLjUwMSAxLjUwMSAwIDAgMS0uNDk5LS40NDQgMi4wMjUgMi4wMjUgMCAwIDEtLjI5Ny0uNjE1IDIuNDMgMi40MyAwIDAgMS0uMDk5LS42ODZ2LS4yOTdjMC0uMzUuMDM1LS42OTUuMTA2LTEuMDMyLjA3LS4zMzcuMTkyLS42NDIuMzY1LS45MTUuMTc1LS4yNzMuNDE4LS40OS43MjctLjY1Mi4zMS0uMTYyLjcwNS0uMjQyIDEuMTg1LS4yNDJabTIuMTE1LjAwN2guNjM5bDEuNjI5IDQuMDU0IDEuNjI1LTQuMDU0aC42NDJsLTIuMDIxIDQuOTcyaC0uNDk5bC0yLjAxNS00Ljk3MlptLS4yMDggMGguNTYzbC4wOTMgMy4wMzN2MS45NGgtLjY1NnYtNC45NzNabTQuMzg1IDBoLjU2M3Y0Ljk3MmgtLjY1NXYtMS45NGwuMDkyLTMuMDMyWm02LjAyNiAwLTIuMDczIDUuNGgtLjU0M2wyLjA3Ni01LjRoLjU0Wm00Ljg5OC0uMDI3djVoLS42MzF2LTQuMjExbC0xLjI3NC40NjR2LS41N2wxLjgwNi0uNjgzaC4wOTlabTUuMjEzIDIuMTE3di43NThjMCAuNDA4LS4wMzcuNzUyLS4xMSAxLjAzMi0uMDczLjI4LS4xNzcuNTA1LS4zMTQuNjc2LS4xMzYuMTctLjMwMS4yOTUtLjQ5NS4zNzJhMS43NjUgMS43NjUgMCAwIDEtLjY0OS4xMTNjLS4xOTEgMC0uMzY4LS4wMjQtLjUyOS0uMDcyYTEuMjQ3IDEuMjQ3IDAgMCAxLS40MzctLjIyOSAxLjM4IDEuMzggMCAwIDEtLjMyOC0uNDE2IDIuMjEzIDIuMjEzIDAgMCAxLS4yMDgtLjYyMiA0LjQ2IDQuNDYgMCAwIDEtLjA3Mi0uODU0di0uNzU4YzAtLjQwNy4wMzYtLjc0OS4xMDktMS4wMjQuMDc1LS4yNzYuMTgxLS40OTYuMzE4LS42NjMuMTM2LS4xNjguMy0uMjg5LjQ5MS0uMzYyLjE5NC0uMDczLjQxLS4xMDkuNjQ5LS4xMDkuMTk0IDAgLjM3MS4wMjQuNTMzLjA3MmExLjIgMS4yIDAgMCAxIC43NjIuNjI1Yy4wOTEuMTY2LjE2LjM3LjIwOC42MS4wNDguMjQyLjA3Mi41MjYuMDcyLjg1MVptLS42MzYuODZ2LS45NjZjMC0uMjIzLS4wMTMtLjQxOC0uMDQxLS41ODdhMS44NSAxLjg1IDAgMCAwLS4xMTItLjQzNy44Ny44NyAwIDAgMC0uMTkxLS4yOTQuNjg0LjY4NCAwIDAgMC0uMjYzLS4xNjQuOTUuOTUgMCAwIDAtLjMzMi0uMDU0Ljg5NS44OTUgMCAwIDAtLjM5OS4wODUuNzIyLjcyMiAwIDAgMC0uMjk0LjI2M2MtLjA3Ny4xMi0uMTM3LjI3OS0uMTc4LjQ3NWEzLjYyIDMuNjIgMCAwIDAtLjA2MS43MTN2Ljk2N2MwIC4yMjMuMDEzLjQyLjAzOC41OS4wMjcuMTcxLjA2Ny4zMi4xMTkuNDQ1LjA1Mi4xMjMuMTE2LjIyNC4xOTEuMzAzLjA3NS4wOC4xNjIuMTQuMjYuMTc4LjEuMDM2LjIxLjA1NS4zMzEuMDU1LjE1NSAwIC4yOS0uMDMuNDA3LS4wOWEuNzM3LjczNyAwIDAgMCAuMjktLjI3NiAxLjQ0IDEuNDQgMCAwIDAgLjE3Ny0uNDg4Yy4wMzktLjIuMDU4LS40NC4wNTgtLjcxN1ptNC44MDMtLjg2di43NThjMCAuNDA4LS4wMzcuNzUyLS4xMDkgMS4wMzItLjA3My4yOC0uMTc4LjUwNS0uMzE1LjY3Ni0uMTM2LjE3LS4zMDEuMjk1LS40OTUuMzcyYTEuNzYgMS43NiAwIDAgMS0uNjQ5LjExMyAxLjg2IDEuODYgMCAwIDEtLjUyOS0uMDcyIDEuMjU1IDEuMjU1IDAgMCAxLS40MzctLjIyOSAxLjM4IDEuMzggMCAwIDEtLjMyOC0uNDE2IDIuMjQ1IDIuMjQ1IDAgMCAxLS4yMDgtLjYyMiA0LjQ2IDQuNDYgMCAwIDEtLjA3Mi0uODU0di0uNzU4YzAtLjQwNy4wMzYtLjc0OS4xMDktMS4wMjQuMDc1LS4yNzYuMTgxLS40OTYuMzE4LS42NjMuMTM2LS4xNjguMy0uMjg5LjQ5Mi0uMzYyLjE5My0uMDczLjQwOS0uMTA5LjY0OC0uMTA5LjE5NCAwIC4zNzIuMDI0LjUzMy4wNzJhMS4yIDEuMiAwIDAgMSAuNzYyLjYyNWMuMDkxLjE2Ni4xNi4zNy4yMDguNjEuMDQ4LjI0Mi4wNzIuNTI2LjA3Mi44NTFabS0uNjM1Ljg2di0uOTY2YTMuNzUgMy43NSAwIDAgMC0uMDQxLS41ODcgMS44NDggMS44NDggMCAwIDAtLjExMy0uNDM3Ljg3Ljg3IDAgMCAwLS4xOTEtLjI5NC42NzcuNjc3IDAgMCAwLS4yNjMtLjE2NC45NS45NSAwIDAgMC0uMzMyLS4wNTQuODk1Ljg5NSAwIDAgMC0uMzk5LjA4NS43MjIuNzIyIDAgMCAwLS4yOTQuMjYzYy0uMDc3LjEyLS4xMzYuMjc5LS4xNzcuNDc1YTMuNTM4IDMuNTM4IDAgMCAwLS4wNjIuNzEzdi45NjdjMCAuMjIzLjAxMy40Mi4wMzguNTkuMDI3LjE3MS4wNjcuMzIuMTE5LjQ0NS4wNTMuMTIzLjExNi4yMjQuMTkyLjMwM2EuNzEuNzEgMCAwIDAgLjI1OS4xNzhjLjEuMDM2LjIxMS4wNTUuMzMxLjA1NS4xNTUgMCAuMjkxLS4wMy40MDctLjA5YS43My43MyAwIDAgMCAuMjktLjI3NmMuMDgtLjEyNy4xMzktLjI5LjE3OC0uNDg4LjAzOC0uMi4wNTgtLjQ0LjA1OC0uNzE3Wm0yLjA1My0yLjk1aC42MzlsMS42MjggNC4wNTQgMS42MjYtNC4wNTRoLjY0MmwtMi4wMjIgNC45NzJoLS40OThsLTIuMDE1LTQuOTcyWm0tLjIwOCAwaC41NjNsLjA5MiAzLjAzM3YxLjk0aC0uNjU1di00Ljk3M1ptNC4zODQgMGguNTY0djQuOTcyaC0uNjU2di0xLjk0bC4wOTItMy4wMzJaIi8+PGcgZmlsbD0iIzE5ODAzOCIgY2xpcC1wYXRoPSJ1cmwoI2kpIj48cmVjdCB3aWR0aD0iODYuMDEyIiBoZWlnaHQ9IjQuNjYzIiB4PSIxMDQuNjYzIiB5PSI1Ni4yMjciIGZpbGwtb3BhY2l0eT0iLjA2IiByeD0iMi4zMzEiLz48cGF0aCBkPSJNMTA0LjY2MyA1NS4wNmg4LjAxMnY2Ljk5NGgtOC4wMTJ6Ii8+PC9nPjxwYXRoIGZpbGw9IiMxOTgwMzgiIGQ9Ik0xMDguMzk5IDY5LjY4NXYuNTM2aC0yLjYzM3YtLjUzNmgyLjYzM1ptLTIuNS00LjQzNnY0Ljk3MmgtLjY1OXYtNC45NzJoLjY1OVptMi4xNTEgMi4xMzd2LjUzNmgtMi4yODR2LS41MzZoMi4yODRabS4zMTQtMi4xMzd2LjU0aC0yLjU5OHYtLjU0aDIuNTk4Wm0xLjYyIDIuMDY2djIuOTA2aC0uNjMydi0zLjY5NWguNTk4bC4wMzQuNzg5Wm0tLjE1LjkxOC0uMjYzLS4wMWEyLjIxIDIuMjEgMCAwIDEgLjExMy0uN2MuMDcyLS4yMTYuMTc1LS40MDQuMzA3LS41NjRhMS4zNjkgMS4zNjkgMCAwIDEgMS4wODItLjUwMmMuMTgzIDAgLjM0Ni4wMjUuNDkyLjA3Ni4xNDYuMDQ3LjI3LjEyNS4zNzIuMjMyLjEwNS4xMDcuMTg1LjI0Ni4yMzkuNDE2LjA1NS4xNjkuMDgyLjM3NS4wODIuNjE4djIuNDIyaC0uNjM1di0yLjQyOGMwLS4xOTQtLjAyOC0uMzQ5LS4wODUtLjQ2NWEuNTI2LjUyNiAwIDAgMC0uMjQ5LS4yNTYuODk5Ljg5OSAwIDAgMC0uNDAzLS4wODIuOTM4LjkzOCAwIDAgMC0uNzYyLjM3MmMtLjA5MS4xMTctLjE2My4yNS0uMjE1LjQtLjA1LjE0OC0uMDc1LjMwNS0uMDc1LjQ3MVptNS43OTYgMS4zNTZ2LTEuOTAyYS43NzMuNzczIDAgMCAwLS4wODktLjM4LjU4MS41ODEgMCAwIDAtLjI1OS0uMjUyLjk0Ni45NDYgMCAwIDAtLjQzMS0uMDg5Yy0uMTU5IDAtLjI5OS4wMjgtLjQyLjA4MmEuNzQuNzQgMCAwIDAtLjI4LjIxNS40NzIuNDcyIDAgMCAwLS4wOTkuMjg3aC0uNjMyYS44NC44NCAwIDAgMSAuMTAzLS4zOTIgMS4xNCAxLjE0IDAgMCAxIC4yOTQtLjM1MmMuMTI5LS4xMDcuMjg0LS4xOTEuNDY0LS4yNTMuMTgyLS4wNjQuMzg1LS4wOTYuNjA4LS4wOTYuMjY4IDAgLjUwNS4wNDYuNzEuMTM3LjIwNy4wOTEuMzY5LjIyOS40ODUuNDEzLjExOC4xODIuMTc4LjQxMS4xNzguNjg3djEuNzJjMCAuMTI0LjAxLjI1NS4wMy4zOTQuMDIzLjEzOC4wNTYuMjU4LjA5OS4zNTh2LjA1NWgtLjY1OWExLjE2NSAxLjE2NSAwIDAgMS0uMDc1LS4yOSAyLjM2NyAyLjM2NyAwIDAgMS0uMDI3LS4zNDJabS4xMDktMS42MDguMDA3LjQ0M2gtLjYzOWMtLjE3OSAwLS4zNC4wMTUtLjQ4MS4wNDUtLjE0MS4wMjctLjI2LjA3LS4zNTUuMTI2YS41NzEuNTcxIDAgMCAwLS4yOTQuNTEyYzAgLjExNy4wMjYuMjIyLjA3OS4zMThhLjU3Mi41NzIgMCAwIDAgLjIzNS4yMjkuODU2Ljg1NiAwIDAgMCAuMzkzLjA4MiAxLjA3MSAxLjA3MSAwIDAgMCAuODY0LS40MjQuNjM4LjYzOCAwIDAgMCAuMTQzLS4zNDVsLjI3LjMwNGEuOTEuOTEgMCAwIDEtLjEzLjMxOCAxLjUxMSAxLjUxMSAwIDAgMS0uNy41OTggMS4zNTQgMS4zNTQgMCAwIDEtLjUzOS4xMDJjLS4yNTEgMC0uNDctLjA0OS0uNjU5LS4xNDdhMS4xMTkgMS4xMTkgMCAwIDEtLjQzNy0uMzkzIDEuMDM1IDEuMDM1IDAgMCAxLS4xNTQtLjU1NmMwLS4xOTguMDM5LS4zNzIuMTE2LS41MjMuMDc3LS4xNTIuMTg5LS4yNzkuMzM1LS4zNzkuMTQ1LS4xMDIuMzIxLS4xOC41MjYtLjIzMi4yMDQtLjA1Mi40MzMtLjA3OC42ODYtLjA3OGguNzM0Wm0xLjc0Ni0zLjAwNmguNjM1djQuNTI5bC0uMDU0LjcxN2gtLjU4MXYtNS4yNDZabTMuMTMyIDMuMzY4di4wNzFjMCAuMjY5LS4wMzIuNTE4LS4wOTYuNzQ4YTEuODQ0IDEuODQ0IDAgMCAxLS4yOC41OTRjLS4xMjMuMTY5LS4yNzMuMy0uNDUxLjM5My0uMTc3LjA5My0uMzgxLjE0LS42MTEuMTQtLjIzNSAwLS40NDEtLjA0LS42MTgtLjEyYTEuMjIgMS4yMiAwIDAgMS0uNDQ0LS4zNTEgMS43OTIgMS43OTIgMCAwIDEtLjI5LS41NTMgMy40NCAzLjQ0IDAgMCAxLS4xNDctLjczMXYtLjMxNWMuMDI3LS4yNzMuMDc2LS41MTcuMTQ3LS43MzQuMDcyLS4yMTYuMTY5LS40LjI5LS41NTMuMTIxLS4xNTUuMjY5LS4yNzIuNDQ0LS4zNTIuMTc1LS4wODIuMzc5LS4xMjMuNjExLS4xMjMuMjMyIDAgLjQzOC4wNDYuNjE4LjEzNy4xOC4wODkuMzMuMjE2LjQ1MS4zODMuMTIzLjE2Ni4yMTYuMzY1LjI4LjU5Ny4wNjQuMjMuMDk2LjQ4Ni4wOTYuNzY5Wm0tLjYzNi4wNzF2LS4wNzJhMi41MiAyLjUyIDAgMCAwLS4wNTEtLjUxOSAxLjM0NCAxLjM0NCAwIDAgMC0uMTY0LS40My44MTUuODE1IDAgMCAwLS4yOTctLjI5NC44NzcuODc3IDAgMCAwLS40NTQtLjEwOS45OTEuOTkxIDAgMCAwLS40MTcuMDgyLjkuOSAwIDAgMC0uMjk3LjIyMiAxLjE2NyAxLjE2NyAwIDAgMC0uMjAxLjMxNCAxLjgxIDEuODEgMCAwIDAtLjExMy4zNjJ2LjgyM2MuMDM3LjE2LjA5Ni4zMTMuMTc4LjQ2MS4wODQuMTQ2LjE5Ni4yNjUuMzM0LjM1OWEuOTMuOTMgMCAwIDAgLjUyMy4xNC44NzQuODc0IDAgMCAwIC40MzctLjEwMy44MjMuODIzIDAgMCAwIC4yOTctLjI5Yy4wNzgtLjEyMy4xMzQtLjI2NS4xNzEtLjQyNy4wMzYtLjE2MS4wNTQtLjMzNC4wNTQtLjUxOVptMi4zNTQtMy40Mzl2NS4yNDZoLS42MzV2LTUuMjQ2aC42MzVabTIuNzgxIDUuMzE0Yy0uMjU3IDAtLjQ5MS0uMDQzLS43LS4xM2ExLjU4NSAxLjU4NSAwIDAgMS0uNTM2LS4zNzIgMS42NjEgMS42NjEgMCAwIDEtLjM0Mi0uNTY3IDIuMDk1IDIuMDk1IDAgMCAxLS4xMTktLjcxN3YtLjE0NGMwLS4zLjA0NC0uNTY3LjEzMy0uODAyLjA4OS0uMjM3LjIwOS0uNDM3LjM2Mi0uNjAxYTEuNTQgMS41NCAwIDAgMSAuNTE5LS4zNzJjLjE5NC0uMDg1LjM5NC0uMTI3LjYwMS0uMTI3LjI2NCAwIC40OTIuMDQ2LjY4My4xMzcuMTk0LjA5MS4zNTIuMjE5LjQ3NS4zODMuMTIzLjE2MS4yMTQuMzUyLjI3My41NzMuMDU5LjIxOS4wODkuNDU4LjA4OS43MTd2LjI4NGgtMi43NnYtLjUxNmgyLjEyOHYtLjA0OGExLjU1IDEuNTUgMCAwIDAtLjEwMy0uNDc4Ljg0Ny44NDcgMCAwIDAtLjI3My0uMzgyYy0uMTI1LS4xLS4yOTYtLjE1LS41MTItLjE1YS44NjEuODYxIDAgMCAwLS43MDcuMzU4IDEuMzMzIDEuMzMzIDAgMCAwLS4yMDEuNDM0IDIuMTkgMi4xOSAwIDAgMC0uMDcyLjU5di4xNDRjMCAuMTc1LjAyNC4zNC4wNzIuNDk1LjA1LjE1My4xMjEuMjg3LjIxNS40MDMuMDk1LjExNi4yMS4yMDcuMzQ1LjI3My4xMzYuMDY2LjI5MS4xLjQ2NC4xLjIyMyAwIC40MTItLjA0Ni41NjctLjEzNy4xNTUtLjA5MS4yOS0uMjEzLjQwNi0uMzY2bC4zODMuMzA0Yy0uMDguMTItLjE4MS4yMzYtLjMwNC4zNDUtLjEyMy4xMS0uMjc0LjE5OC0uNDU0LjI2N2ExLjc2IDEuNzYgMCAwIDEtLjYzMi4xMDJabTQuNzM3LS43ODV2LTQuNTI5aC42MzZ2NS4yNDZoLS41ODFsLS4wNTUtLjcxN1ptLTIuNDg2LTEuMDl2LS4wNzJjMC0uMjgyLjAzNS0uNTM4LjEwMy0uNzY4LjA3LS4yMzIuMTY5LS40MzEuMjk3LS41OTdhMS4zMSAxLjMxIDAgMCAxIDEuMDYyLS41MmMuMjMyIDAgLjQzNS4wNDEuNjA4LjEyMy4xNzUuMDguMzIzLjE5Ny40NDQuMzUyLjEyMy4xNTMuMjIuMzM3LjI5LjU1My4wNzEuMjE3LjEyLjQ2MS4xNDcuNzM0di4zMTVjLS4wMjUuMjctLjA3NC41MTQtLjE0Ny43My0uMDcuMjE3LS4xNjcuNDAxLS4yOS41NTRhMS4yMiAxLjIyIDAgMCAxLS40NDQuMzUyYy0uMTc1LjA4LS4zOC4xMTktLjYxNS4xMTktLjIxNiAwLS40MTQtLjA0Ny0uNTk0LS4xNGExLjQwMiAxLjQwMiAwIDAgMS0uNDYxLS4zOTMgMS44OTEgMS44OTEgMCAwIDEtLjI5Ny0uNTk0IDIuNjI3IDIuNjI3IDAgMCAxLS4xMDMtLjc0OFptLjYzNi0uMDcydi4wNzJjMCAuMTg1LjAxOC4zNTguMDU0LjUyLjAzOS4xNi4wOTguMzAzLjE3OC40MjYuMDc5LjEyMy4xODEuMjIuMzA0LjI5LjEyMy4wNjkuMjcuMTAzLjQ0LjEwMy4yMSAwIC4zODItLjA0NC41MTYtLjEzM2EuOTkuOTkgMCAwIDAgLjMyOC0uMzUyYy4wODItLjE0Ni4xNDUtLjMwNC4xOTEtLjQ3NXYtLjgyM2ExLjc2NyAxLjc2NyAwIDAgMC0uMTItLjM2MiAxLjExMiAxLjExMiAwIDAgMC0uMTk4LS4zMTQuODQzLjg0MyAwIDAgMC0uMjk3LS4yMjIuOTYzLjk2MyAwIDAgMC0uNDEzLS4wODIuODczLjg3MyAwIDAgMC0uNDQ3LjExLjg2Ni44NjYgMCAwIDAtLjMwNC4yOTNjLS4wOC4xMjMtLjEzOS4yNjYtLjE3OC40M2EyLjM4NCAyLjM4NCAwIDAgMC0uMDU0LjUyWiIvPjxnIGNsaXAtcGF0aD0idXJsKCNqKSI+PHBhdGggZmlsbD0iIzE5ODAzOCIgZD0iTTE4Ni4wMTIgNjQuMzM2YTMuODg2IDMuODg2IDAgMCAwIDAgNy43NyAzLjg4NyAzLjg4NyAwIDAgMCAzLjg4Ni0zLjg4NSAzLjg4NyAzLjg4NyAwIDAgMC0zLjg4Ni0zLjg4NVptLS43NzcgNS44MjgtMS45NDMtMS45NDMuNTQ4LS41NDcgMS4zOTUgMS4zOSAyLjk0OS0yLjk0OC41NDguNTUxLTMuNDk3IDMuNDk3WiIvPjwvZz48L2c+PHBhdGggZmlsbD0iIzAwMCIgZmlsbC1vcGFjaXR5PSIuMTIiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTIwMCA3OC40NjdIMHYtLjU4M2gyMDB2LjU4M1oiIGNsaXAtcnVsZT0iZXZlbm9kZCIvPjxnIGNsaXAtcGF0aD0idXJsKCNrKSI+PHBhdGggZmlsbD0iIzMwNTY4MCIgZD0iTTkuOTE1IDg4Ljk5aDIuMDUyYy40NCAwIC44MTYuMDY3IDEuMTI3LjIuMzExLjEzMi41NDkuMzI5LjcxMy41ODkuMTY4LjI1OC4yNTEuNTc2LjI1MS45NTYgMCAuMjktLjA1My41NDUtLjE1OS43NjUtLjEwNi4yMi0uMjU2LjQwNi0uNDUuNTU4YTIuMTc2IDIuMTc2IDAgMCAxLS42OTQuMzQ2bC0uMzAyLjE0OGgtMS44NDVsLS4wMDgtLjc5M2gxLjM4M2MuMjM5IDAgLjQzOC0uMDQyLjU5Ny0uMTI3LjE2LS4wODUuMjgtLjIuMzU5LS4zNDdhMS4wMiAxLjAyIDAgMCAwIC4xMjMtLjUwMmMwLS4yMDItLjA0LS4zNzctLjEyLS41MjZhLjc3Ljc3IDAgMCAwLS4zNTgtLjM0NyAxLjM2IDEuMzYgMCAwIDAtLjYxNy0uMTIzaC0xLjA1MnY1LjAwNGgtMXYtNS44Wm0zLjMxIDUuODAxLTEuMzYyLTIuNjA2IDEuMDQ4LS4wMDQgMS4zODIgMi41NTh2LjA1MmgtMS4wNjdabTQuNDczLTEuMDE2VjkwLjQ4aC45NjR2NC4zMTFoLS45MDhsLS4wNTYtMS4wMTZabS4xMzYtLjg5Ni4zMjItLjAwOGMwIC4yOS0uMDMyLjU1Ni0uMDk1LjhhMS44NTYgMS44NTYgMCAwIDEtLjI5NS42MzQgMS4zNzkgMS4zNzkgMCAwIDEtLjUxLjQxOCAxLjcyNSAxLjcyNSAwIDAgMS0uNzQ1LjE0OGMtLjIxIDAtLjQwMi0uMDMtLjU3OC0uMDkyYTEuMTg0IDEuMTg0IDAgMCAxLS40NTQtLjI4MyAxLjI4NyAxLjI4NyAwIDAgMS0uMjktLjQ5OCAyLjMwMyAyLjMwMyAwIDAgMS0uMTA0LS43MzNWOTAuNDhoLjk2djIuNzkzYzAgLjE1Ny4wMTguMjg4LjA1NS4zOTVhLjY2OS42NjkgMCAwIDAgLjE1Mi4yNS41NC41NCAwIDAgMCAuMjIzLjEzNmMuMDg1LjAyNi4xNzUuMDQuMjcuMDQuMjc0IDAgLjQ5LS4wNTMuNjQ2LS4xNmEuODgyLjg4MiAwIDAgMCAuMzM5LS40MzhjLjA3LS4xODMuMTA0LS4zODkuMTA0LS42MTdabTIuOTg2LTQuMjA4djYuMTJoLS45NjR2LTYuMTJoLjk2NFptMy4wOTggNi4yYy0uMzE5IDAtLjYwNy0uMDUyLS44NjUtLjE1NmExLjkwOCAxLjkwOCAwIDAgMS0uNjUzLS40NDIgMS45NiAxLjk2IDAgMCAxLS40MS0uNjY1IDIuMzMgMi4zMyAwIDAgMS0uMTQ0LS44MjV2LS4xNmMwLS4zMzcuMDUtLjY0Mi4xNDgtLjkxNmEyLjA4IDIuMDggMCAwIDEgLjQxLS43Yy4xNzUtLjE5OC4zODMtLjM0OC42MjItLjQ1MS4yMzktLjEwNC40OTctLjE1Ni43NzYtLjE1Ni4zMDggMCAuNTc4LjA1Mi44MS4xNTYuMjMuMTAzLjQyMi4yNS41NzMuNDM4LjE1NC4xODYuMjY4LjQwOC4zNDMuNjY1LjA3Ny4yNTguMTE1LjU0Mi4xMTUuODUzdi40MWgtMy4zM3YtLjY4OWgyLjM4MnYtLjA3NmExLjM1MiAxLjM1MiAwIDAgMC0uMTA0LS40ODYuODI2LjgyNiAwIDAgMC0uMjgzLS4zNjZjLS4xMjctLjA5My0uMjk3LS4xNC0uNTEtLjE0YS44NjcuODY3IDAgMCAwLS40MjYuMTA0Ljg0NC44NDQgMCAwIDAtLjMwNy4yOSAxLjUzMyAxLjUzMyAwIDAgMC0uMTkuNDYzIDIuNTk3IDIuNTk3IDAgMCAwLS4wNjUuNjAydi4xNTljMCAuMTg5LjAyNi4zNjQuMDc2LjUyNi4wNTMuMTYuMTMuMjk5LjIzMS40MTguMTAxLjEyLjIyMy4yMTQuMzY3LjI4My4xNDMuMDY2LjMwNi4xLjQ5LjEuMjMgMCAuNDM3LS4wNDcuNjE3LS4xNC4xOC0uMDkzLjMzOC0uMjI0LjQ3LS4zOTRsLjUwNi40OWExLjgxNyAxLjgxNyAwIDAgMS0uOTA4LjY5Yy0uMjEyLjA3Ni0uNDYuMTE1LS43NDEuMTE1Wm02LjY5OCAwYy0uMzE5IDAtLjYwNy0uMDUyLS44NjUtLjE1NmExLjkwOCAxLjkwOCAwIDAgMS0uNjUzLS40NDIgMS45NiAxLjk2IDAgMCAxLS40MS0uNjY1IDIuMzMgMi4zMyAwIDAgMS0uMTQ0LS44MjV2LS4xNmMwLS4zMzcuMDUtLjY0Mi4xNDgtLjkxNmEyLjA4IDIuMDggMCAwIDEgLjQxLS43Yy4xNzUtLjE5OC4zODItLjM0OC42MjEtLjQ1MS4yNC0uMTA0LjQ5OC0uMTU2Ljc3Ny0uMTU2LjMwOCAwIC41NzguMDUyLjgxLjE1Ni4yMy4xMDMuNDIxLjI1LjU3My40MzguMTU0LjE4Ni4yNjguNDA4LjM0Mi42NjUuMDc4LjI1OC4xMTYuNTQyLjExNi44NTN2LjQxaC0zLjMzdi0uNjg5aDIuMzgydi0uMDc2YTEuMzUyIDEuMzUyIDAgMCAwLS4xMDQtLjQ4Ni44MjYuODI2IDAgMCAwLS4yODMtLjM2NmMtLjEyNy0uMDkzLS4yOTctLjE0LS41MS0uMTRhLjg2Ny44NjcgMCAwIDAtLjQyNi4xMDQuODQ0Ljg0NCAwIDAgMC0uMzA3LjI5IDEuNTMzIDEuNTMzIDAgMCAwLS4xOTEuNDYzIDIuNTk3IDIuNTk3IDAgMCAwLS4wNjQuNjAydi4xNTljMCAuMTg5LjAyNi4zNjQuMDc2LjUyNi4wNTMuMTYuMTMuMjk5LjIzMS40MTguMTAxLjEyLjIyMy4yMTQuMzY3LjI4My4xNDMuMDY2LjMwNi4xLjQ5LjEuMjMgMCAuNDM3LS4wNDcuNjE3LS4xNC4xOC0uMDkzLjMzNy0uMjI0LjQ3LS4zOTRsLjUwNi40OWExLjgxNyAxLjgxNyAwIDAgMS0uOTA4LjY5Yy0uMjEzLjA3Ni0uNDYuMTE1LS43NDEuMTE1Wm0zLjU3Mi0zLjQ3djMuMzloLS45NnYtNC4zMWguOTA0bC4wNTYuOTJabS0uMTcxIDEuMDc1LS4zMTEtLjAwNGMuMDAyLS4zMDUuMDQ1LS41ODUuMTI3LS44NC4wODUtLjI1NS4yMDItLjQ3NS4zNS0uNjU4LjE1Mi0uMTgzLjMzMy0uMzI0LjU0My0uNDIyLjIxLS4xMDEuNDQzLS4xNTIuNzAxLS4xNTIuMjA3IDAgLjM5NC4wMy41NjIuMDg4LjE3LjA1Ni4zMTUuMTQ4LjQzNC4yNzUuMTIyLjEyNy4yMTUuMjk0LjI3OS40OTguMDY0LjIwMi4wOTYuNDUuMDk2Ljc0NXYyLjc4NWgtLjk2NXYtMi43ODljMC0uMjA3LS4wMy0uMzctLjA5MS0uNDlhLjUxMy41MTMgMCAwIDAtLjI2LS4yNTkuOTcyLjk3MiAwIDAgMC0uNDE4LS4wOC45MjguOTI4IDAgMCAwLS40NDIuMTA0Ljk5NS45OTUgMCAwIDAtLjMzLjI4M2MtLjA4OC4xMi0uMTU2LjI1Ny0uMjA0LjQxNGExLjcxMiAxLjcxMiAwIDAgMC0uMDcxLjUwMlptNi42NjctMS45OTZoLjg3M3Y0LjE5MWMwIC4zODgtLjA4My43MTgtLjI0Ny45ODktLjE2NS4yNy0uMzk1LjQ3Ni0uNjkuNjE3YTIuNDA3IDIuNDA3IDAgMCAxLTIuMTU1LS4wODggMS40NCAxLjQ0IDAgMCAxLS40NjYtLjQxbC40NS0uNTY2Yy4xNTQuMTg0LjMyNC4zMTguNTEuNDAzLjE4Ni4wODUuMzgxLjEyNy41ODYuMTI3LjIyIDAgLjQwOC0uMDQuNTYyLS4xMjNhLjgzNS44MzUgMCAwIDAgLjM2Mi0uMzU1IDEuMTkgMS4xOSAwIDAgMCAuMTI4LS41NzR2LTMuMjM1bC4wODctLjk3NlptLTIuOTI4IDIuMjAzVjkyLjZjMC0uMzI3LjA0LS42MjQuMTItLjg5My4wOC0uMjcuMTkzLS41MDMuMzQyLS42OTcuMTQ5LS4xOTcuMzMtLjM0Ny41NDItLjQ1YTEuNTkgMS41OSAwIDAgMSAuNzIxLS4xNmMuMjc5IDAgLjUxNy4wNTEuNzEzLjE1Mi4yLjEuMzY1LjI0Ni40OTguNDM0LjEzMy4xODYuMjM3LjQxLjMxMS42Ny4wNzcuMjU3LjEzNC41NDQuMTcxLjg2di4yNjdjLS4wMzQuMzA4LS4wOTMuNTktLjE3NS44NDVhMi4zMzMgMi4zMzMgMCAwIDEtLjMyNy42NjFjLS4xMzUuMTg2LS4zMDIuMzMtLjUwMi40My0uMTk2LjEwMS0uNDI5LjE1Mi0uNjk3LjE1Mi0uMjYzIDAtLjUtLjA1NS0uNzEzLS4xNjRhMS42MjQgMS42MjQgMCAwIDEtLjU0Mi0uNDU4IDIuMTcyIDIuMTcyIDAgMCAxLS4zNDMtLjY5M2MtLjA4LS4yNjgtLjExOS0uNTYtLjExOS0uODczWm0uOTYtLjA4M3YuMDgzYzAgLjE5Ny4wMTkuMzguMDU2LjU1LjA0LjE3LjEuMzIuMTguNDVhLjk0Ljk0IDAgMCAwIC4zMS4zMDMuOTA0LjkwNCAwIDAgMCAuNDUuMTA4Yy4yMjYgMCAuNDEtLjA0OC41NTQtLjE0NGEuOTMuOTMgMCAwIDAgLjMzNS0uMzg2Yy4wOC0uMTY1LjEzNS0uMzQ4LjE2Ny0uNTV2LS43MjFhMS43NTggMS43NTggMCAwIDAtLjEtLjQzOCAxLjE3NCAxLjE3NCAwIDAgMC0uMTk1LS4zNTUuODE1LjgxNSAwIDAgMC0uMzEtLjIzOSAxLjAzMyAxLjAzMyAwIDAgMC0uNDQzLS4wODguODc3Ljg3NyAwIDAgMC0uNDUuMTEyLjkxMy45MTMgMCAwIDAtLjMxNS4zMDdjLS4wOC4xMy0uMTQuMjgxLS4xOC40NTQtLjAzOS4xNzMtLjA1OS4zNTctLjA1OS41NTRabTUuMDEtMi4xMnY0LjMxMWgtLjk2NHYtNC4zMWguOTY1Wk00Mi43IDg5LjM1YzAtLjE0Ni4wNDctLjI2Ny4xNDMtLjM2M2EuNTUuNTUgMCAwIDEgLjQwNi0uMTQ3Yy4xNyAwIC4zMDUuMDQ5LjQwMy4xNDdhLjQ4NC40ODQgMCAwIDEgLjE0Ny4zNjMuNDguNDggMCAwIDEtLjE0Ny4zNTguNTUzLjU1MyAwIDAgMS0uNDAzLjE0NC41NTguNTU4IDAgMCAxLS40MDYtLjE0NC40ODcuNDg3IDAgMCAxLS4xNDMtLjM1OFptMy4xNzcgMi4wNTF2My4zOTFoLS45NnYtNC4zMWguOTA0bC4wNTYuOTJabS0uMTcxIDEuMDc2LS4zMS0uMDA0Yy4wMDItLjMwNS4wNDQtLjU4NS4xMjctLjg0LjA4NS0uMjU1LjIwMi0uNDc1LjM1LS42NTguMTUyLS4xODMuMzMyLS4zMjQuNTQyLS40MjIuMjEtLjEwMS40NDQtLjE1Mi43MDEtLjE1Mi4yMDcgMCAuMzk1LjAzLjU2Mi4wODguMTcuMDU2LjMxNS4xNDguNDM0LjI3NS4xMjMuMTI3LjIxNi4yOTQuMjguNDk4YTIuNSAyLjUgMCAwIDEgLjA5NS43NDV2Mi43ODVoLS45NjR2LTIuNzg5YzAtLjIwNy0uMDMtLjM3LS4wOTItLjQ5YS41MTMuNTEzIDAgMCAwLS4yNTktLjI1OS45NzIuOTcyIDAgMCAwLS40MTgtLjA4LjkyOC45MjggMCAwIDAtLjQ0My4xMDQuOTk1Ljk5NSAwIDAgMC0uMzMuMjgzIDEuMzcgMS4zNyAwIDAgMC0uMjAzLjQxNCAxLjcxMiAxLjcxMiAwIDAgMC0uMDcyLjUwMlptNS44MDcgMi4zOTVhMi4zIDIuMyAwIDAgMS0uODY0LS4xNTYgMS45MDggMS45MDggMCAwIDEtLjY1NC0uNDQyIDEuOTYzIDEuOTYzIDAgMCAxLS40MS0uNjY1IDIuMzMgMi4zMyAwIDAgMS0uMTQ0LS44MjV2LS4xNmMwLS4zMzcuMDUtLjY0Mi4xNDgtLjkxNmEyLjA4IDIuMDggMCAwIDEgLjQxLS43Yy4xNzUtLjE5OC4zODMtLjM0OC42MjItLjQ1MS4yMzktLjEwNC40OTgtLjE1Ni43NzctLjE1Ni4zMDggMCAuNTc3LjA1Mi44MDguMTU2LjIzMS4xMDMuNDIzLjI1LjU3NC40MzguMTU0LjE4Ni4yNjguNDA4LjM0My42NjUuMDc3LjI1OC4xMTUuNTQyLjExNS44NTN2LjQxaC0zLjMzdi0uNjg5aDIuMzgydi0uMDc2YTEuMzUgMS4zNSAwIDAgMC0uMTA0LS40ODYuODI2LjgyNiAwIDAgMC0uMjgyLS4zNjZjLS4xMjgtLjA5My0uMjk4LS4xNC0uNTEtLjE0YS44NjcuODY3IDAgMCAwLS40MjcuMTA0Ljg0My44NDMgMCAwIDAtLjMwNi4yOSAxLjUzIDEuNTMgMCAwIDAtLjE5Mi40NjMgMi41OTcgMi41OTcgMCAwIDAtLjA2NC42MDJ2LjE1OWMwIC4xODkuMDI2LjM2NC4wNzYuNTI2LjA1My4xNi4xMy4yOTkuMjMxLjQxOC4xMDEuMTIuMjIzLjIxNC4zNjcuMjgzLjE0My4wNjYuMzA3LjEuNDkuMS4yMyAwIC40MzctLjA0Ny42MTctLjE0LjE4MS0uMDkzLjMzOC0uMjI0LjQ3LS4zOTRsLjUwNi40OWExLjgxNSAxLjgxNSAwIDAgMS0uOTA4LjY5Yy0uMjEyLjA3Ni0uNDYuMTE1LS43NC4xMTVabS0zOS43OTIgMTFjLS4zMiAwLS42MDctLjA1Mi0uODY1LS4xNTZhMS44OTkgMS44OTkgMCAwIDEtLjY1My0uNDQyIDEuOTYyIDEuOTYyIDAgMCAxLS40MS0uNjY1IDIuMzMgMi4zMyAwIDAgMS0uMTQ0LS44MjV2LS4xNTljMC0uMzM4LjA1LS42NDMuMTQ3LS45MTcuMDk5LS4yNzMuMjM1LS41MDcuNDEtLjcwMS4xNzYtLjE5Ni4zODMtLjM0Ny42MjItLjQ1LjI0LS4xMDQuNDk4LS4xNTYuNzc3LS4xNTYuMzA4IDAgLjU3OC4wNTIuODA5LjE1Ni4yMzEuMTAzLjQyMi4yNS41NzQuNDM4LjE1NC4xODYuMjY4LjQwOC4zNDIuNjY1LjA3Ny4yNTguMTE2LjU0Mi4xMTYuODUzdi40MWgtMy4zM3YtLjY4OWgyLjM4MnYtLjA3NWExLjM1NSAxLjM1NSAwIDAgMC0uMTA0LS40ODcuODI3LjgyNyAwIDAgMC0uMjgzLS4zNjZjLS4xMjctLjA5My0uMjk3LS4xNC0uNTEtLjE0YS44MzYuODM2IDAgMCAwLS43MzMuMzk1IDEuNTIgMS41MiAwIDAgMC0uMTkxLjQ2MiAyLjYwMSAyLjYwMSAwIDAgMC0uMDY0LjYwMnYuMTU5YzAgLjE4OS4wMjUuMzY0LjA3Ni41MjYuMDUzLjE1OS4xMy4yOTkuMjMuNDE4LjEwMi4xMi4yMjQuMjE0LjM2Ny4yODMuMTQ0LjA2Ny4zMDcuMS40OS4xLjIzMiAwIC40MzctLjA0Ny42MTgtLjE0LjE4LS4wOTMuMzM3LS4yMjQuNDctLjM5NGwuNTA2LjQ5YTEuNzk2IDEuNzk2IDAgMCAxLS45MDguNjg5Yy0uMjEzLjA3Ny0uNDYuMTE2LS43NDEuMTE2Wm0zLjM1My00LjM5MS44MiAxLjQzLjgzNy0xLjQzaDEuMDU2bC0xLjMwNyAyLjExNiAxLjM1OSAyLjE5NWgtMS4wNTZsLS44NzctMS40OS0uODc2IDEuNDloLTEuMDZsMS4zNTUtMi4xOTUtMS4zMDMtMi4xMTZoMS4wNTJabTUuMzM3IDQuMzkxYTIuMjkgMi4yOSAwIDAgMS0uODY1LS4xNTYgMS44OTkgMS44OTkgMCAwIDEtLjY1My0uNDQyIDEuOTYyIDEuOTYyIDAgMCAxLS40MS0uNjY1IDIuMzMxIDIuMzMxIDAgMCAxLS4xNDQtLjgyNXYtLjE1OWMwLS4zMzguMDQ5LS42NDMuMTQ3LS45MTcuMDk5LS4yNzMuMjM1LS41MDcuNDEtLjcwMS4xNzYtLjE5Ni4zODMtLjM0Ny42MjItLjQ1LjI0LS4xMDQuNDk4LS4xNTYuNzc3LS4xNTYuMzA4IDAgLjU3OC4wNTIuODA5LjE1Ni4yMy4xMDMuNDIyLjI1LjU3NC40MzguMTU0LjE4Ni4yNjguNDA4LjM0Mi42NjUuMDc3LjI1OC4xMTYuNTQyLjExNi44NTN2LjQxaC0zLjMzMXYtLjY4OWgyLjM4M3YtLjA3NWExLjM1MyAxLjM1MyAwIDAgMC0uMTA0LS40ODcuODI2LjgyNiAwIDAgMC0uMjgzLS4zNjZjLS4xMjctLjA5My0uMjk3LS4xNC0uNTEtLjE0YS44MzcuODM3IDAgMCAwLS43MzMuMzk1IDEuNTIgMS41MiAwIDAgMC0uMTkxLjQ2MiAyLjYwMSAyLjYwMSAwIDAgMC0uMDY0LjYwMnYuMTU5YzAgLjE4OS4wMjUuMzY0LjA3Ni41MjYuMDUzLjE1OS4xMy4yOTkuMjMuNDE4LjEwMi4xMi4yMjQuMjE0LjM2Ny4yODMuMTQ0LjA2Ny4zMDcuMS40OS4xLjIzMiAwIC40MzctLjA0Ny42MTgtLjE0LjE4LS4wOTMuMzM3LS4yMjQuNDctLjM5NGwuNTA2LjQ5YTEuNzk3IDEuNzk3IDAgMCAxLS45MDguNjg5Yy0uMjEzLjA3Ny0uNDYuMTE2LS43NDEuMTE2Wm00LjM4LS43NjVhLjk1Ljk1IDAgMCAwIC40MjMtLjA5Mi43OTkuNzk5IDAgMCAwIC4zMDctLjI2My43MTQuNzE0IDAgMCAwIC4xMzEtLjM4NmguOTA0YTEuMzQ3IDEuMzQ3IDAgMCAxLS4yNDcuNzYxYy0uMTU5LjIyOC0uMzcuNDEtLjYzMy41NDUtLjI2My4xMzMtLjU1NC4yLS44NzMuMi0uMzI5IDAtLjYxNi0uMDU2LS44Ni0uMTY4YTEuNzAxIDEuNzAxIDAgMCAxLS42MS0uNDcgMi4wNyAyLjA3IDAgMCAxLS4zNjYtLjY4OWMtLjA4LS4yNi0uMTItLjUzOS0uMTItLjgzN3YtLjEzOWMwLS4yOTguMDQtLjU3Ny4xMi0uODM3LjA4Mi0uMjYzLjIwNC0uNDk0LjM2Ni0uNjkzLjE2Mi0uMTk5LjM2Ni0uMzU1LjYxLS40NjYuMjQ0LS4xMTQuNTMtLjE3Mi44NTYtLjE3Mi4zNDYgMCAuNjQ5LjA3LjkwOS4yMDguMjYuMTM1LjQ2NS4zMjUuNjEzLjU2OS4xNTIuMjQyLjIzLjUyNC4yMzUuODQ1aC0uOTA0YS45Ni45NiAwIDAgMC0uMTItLjQzLjc5Ljc5IDAgMCAwLS4yOTQtLjMxMS44NDEuODQxIDAgMCAwLS40NS0uMTE2Ljg5Mi44OTIgMCAwIDAtLjQ4My4xMi44LjggMCAwIDAtLjI5OC4zMTkgMS41NTggMS41NTggMCAwIDAtLjE1Ni40NWMtLjAyOS4xNjUtLjA0NC4zMzYtLjA0NC41MTR2LjEzOWMwIC4xNzguMDE1LjM1MS4wNDQuNTE4LjAzLjE2OC4wOC4zMTguMTUyLjQ1YS44Ny44NyAwIDAgMCAuMzAyLjMxNWMuMTI4LjA3Ny4yOS4xMTYuNDg3LjExNlptNS4yNDItLjMzMXYtMy4yOTVoLjk2NHY0LjMxMWgtLjkwOGwtLjA1Ni0xLjAxNlptLjEzNS0uODk2LjMyMy0uMDA4YzAgLjI4OS0uMDMyLjU1Ni0uMDk2LjhhMS44NTkgMS44NTkgMCAwIDEtLjI5NC42MzQgMS4zNzggMS4zNzggMCAwIDEtLjUxLjQxOCAxLjcxNSAxLjcxNSAwIDAgMS0uNzQ1LjE0OGMtLjIxIDAtLjQwMy0uMDMxLS41NzgtLjA5MmExLjE3NyAxLjE3NyAwIDAgMS0uNDU0LS4yODMgMS4yOCAxLjI4IDAgMCAxLS4yOTEtLjQ5OCAyLjI5OCAyLjI5OCAwIDAgMS0uMTA0LS43MzN2LTIuNzg1aC45NnYyLjc5M2MwIC4xNTcuMDIuMjg4LjA1Ni4zOTRhLjY2LjY2IDAgMCAwIC4xNTIuMjUxLjU0Mi41NDIgMCAwIDAgLjIyMy4xMzYuODkuODkgMCAwIDAgLjI3LjA0Yy4yNzQgMCAuNDktLjA1My42NDYtLjE2YS44NzguODc4IDAgMCAwIC4zMzktLjQzOCAxLjc0IDEuNzQgMCAwIDAgLjEwMy0uNjE3Wm0zLjkzNS0yLjM5OXYuNzAxaC0yLjQzdi0uNzAxaDIuNDNabS0xLjczLTEuMDU2aC45NjF2NC4xNzZjMCAuMTMzLjAxOS4yMzUuMDU2LjMwNy4wNC4wNjkuMDk0LjExNS4xNjMuMTM5YS43NC43NCAwIDAgMCAuMjQzLjAzNiAxLjkwMSAxLjkwMSAwIDAgMCAuMzM5LS4wMzZsLjAwNC43MzNhMi4xMDYgMi4xMDYgMCAwIDEtLjYzNy4wOTJjLS4yMjEgMC0uNDE2LS4wMzktLjU4Ni0uMTE2YS44NjIuODYyIDAgMCAxLS4zOTktLjM4NmMtLjA5NS0uMTc4LS4xNDMtLjQxNS0uMTQzLS43MDl2LTQuMjM2Wm0zLjY0NSAxLjA1NnY0LjMxMWgtLjk2NXYtNC4zMTFoLjk2NVptLTEuMDI4LTEuMTMxYzAtLjE0Ni4wNDctLjI2Ny4xNDMtLjM2M2EuNTUuNTUgMCAwIDEgLjQwNy0uMTQ3Yy4xNyAwIC4zMDQuMDQ5LjQwMi4xNDdhLjQ4Ni40ODYgMCAwIDEgLjE0Ny4zNjNjMCAuMTQzLS4wNDkuMjYzLS4xNDcuMzU4YS41NTEuNTUxIDAgMCAxLS40MDMuMTQ0LjU1Ny41NTcgMCAwIDEtLjQwNi0uMTQ0LjQ4NS40ODUgMCAwIDEtLjE0My0uMzU4Wm0yLjA0MiAzLjMzNHYtLjA5MWMwLS4zMTEuMDQ1LS41OTkuMTM1LS44NjUuMDktLjI2OC4yMi0uNS4zOS0uNjk3LjE3My0uMTk5LjM4My0uMzUzLjYzLS40NjIuMjUtLjExMi41MzItLjE2OC44NDUtLjE2OC4zMTYgMCAuNTk4LjA1Ni44NDUuMTY4LjI1LjEwOS40Ni4yNjMuNjMzLjQ2Mi4xNzMuMTk3LjMwNC40MjkuMzk1LjY5Ny4wOS4yNjYuMTM1LjU1NC4xMzUuODY1di4wOTFjMCAuMzExLS4wNDUuNTk5LS4xMzYuODY1LS4wOS4yNjYtLjIyMS40OTgtLjM5NC42OTdhMS44MTQgMS44MTQgMCAwIDEtLjYzLjQ2MiAyLjA2MiAyLjA2MiAwIDAgMS0uODQuMTY0IDIuMSAyLjEgMCAwIDEtLjg0OS0uMTY0IDEuODEzIDEuODEzIDAgMCAxLS42My0uNDYyIDIuMDYxIDIuMDYxIDAgMCAxLS4zOTQtLjY5NyAyLjY3MyAyLjY3MyAwIDAgMS0uMTM1LS44NjVabS45Ni0uMDkxdi4wOTFjMCAuMTk0LjAyLjM3OC4wNi41NS4wNC4xNzMuMTAyLjMyNC4xODcuNDU0YS45MTYuOTE2IDAgMCAwIC4zMjcuMzA3Yy4xMzMuMDc1LjI5LjExMi40NzQuMTEyYS45MS45MSAwIDAgMCAuNzg5LS40MTljLjA4NS0uMTMuMTQ3LS4yODEuMTg3LS40NTRhMi4yOSAyLjI5IDAgMCAwIC4wNjQtLjU1di0uMDkxYTIuMjMgMi4yMyAwIDAgMC0uMDY0LS41NDIgMS4zOSAxLjM5IDAgMCAwLS4xOTEtLjQ1OC45MS45MSAwIDAgMC0uNzkzLS40MjcuOTIxLjkyMSAwIDAgMC0uNDcuMTE2LjkyLjkyIDAgMCAwLS4zMjMuMzExIDEuNDQ0IDEuNDQ0IDAgMCAwLS4xODcuNDU4Yy0uMDQuMTctLjA2LjM1MS0uMDYuNTQyWm00Ljk1LTEuMTkxdjMuMzloLS45NnYtNC4zMTFoLjkwNWwuMDU2LjkyMVptLS4xNyAxLjA3NS0uMzEyLS4wMDRjLjAwMy0uMzA1LjA0Ni0uNTg1LjEyOC0uODQuMDg1LS4yNTUuMjAyLS40NzUuMzUtLjY1OGExLjU5NiAxLjU5NiAwIDAgMSAxLjI0My0uNTc0Yy4yMDggMCAuMzk1LjAzLjU2My4wODguMTcuMDU2LjMxNC4xNDguNDM0LjI3NS4xMjIuMTI4LjIxNS4yOTQuMjc5LjQ5OGEyLjUgMi41IDAgMCAxIC4wOTUuNzQ1djIuNzg1aC0uOTY0di0yLjc4OWMwLS4yMDctLjAzLS4zNy0uMDkyLS40OWEuNTE1LjUxNSAwIDAgMC0uMjU4LS4yNTkuOTczLjk3MyAwIDAgMC0uNDE5LS4wOC45My45MyAwIDAgMC0uNDQyLjEwNC45ODguOTg4IDAgMCAwLS4zMy4yODMgMS4zNzEgMS4zNzEgMCAwIDAtLjIwNC40MTQgMS43MTMgMS43MTMgMCAwIDAtLjA3Mi41MDJabTYuMzI0IDEuMTQ4YS40OC40OCAwIDAgMC0uMDcxLS4yNTljLS4wNDgtLjA4LS4xNC0uMTUyLS4yNzUtLjIxNWEyLjYzOCAyLjYzOCAwIDAgMC0uNTktLjE3NiA1LjAyMiA1LjAyMiAwIDAgMS0uNjMtLjE3OSAyLjAwNSAyLjAwNSAwIDAgMS0uNDg1LS4yNTkuOTkyLjk5MiAwIDAgMS0uNDI2LS44MzdjMC0uMTc1LjAzOC0uMzQxLjExNS0uNDk4LjA3Ny0uMTU2LjE4Ny0uMjk1LjMzLS40MTRhMS42IDEuNiAwIDAgMSAuNTIyLS4yODNjLjIwOC0uMDY5LjQzOS0uMTA0LjY5NC0uMTA0LjM2IDAgLjY3LjA2Mi45MjguMTg0LjI2LjExOS40Ni4yODMuNTk4LjQ5LjEzOC4yMDQuMjA3LjQzNS4yMDcuNjkzaC0uOTZjMC0uMTE0LS4wMy0uMjItLjA4OC0uMzE5YS42MDkuNjA5IDAgMCAwLS4yNTUtLjI0My44ODIuODgyIDAgMCAwLS40My0uMDk1LjkzNi45MzYgMCAwIDAtLjQxLjA3OS41NjIuNTYyIDAgMCAwLS4yNC4yLjUwNi41MDYgMCAwIDAtLjAzNi40NjZjLjAzLjA1NS4wNzcuMTA3LjE0NC4xNTUuMDY2LjA0NS4xNTcuMDg4LjI3LjEyOC4xMTguMDM5LjI2NC4wNzguNDM5LjExNS4zMy4wNjkuNjEyLjE1OC44NDkuMjY3LjIzOS4xMDYuNDIyLjI0NC41NS40MTQuMTI3LjE2OC4xOS4zOC4xOS42MzhhMS4xMzIgMS4xMzIgMCAwIDEtLjQ3My45MzYgMS43NyAxLjc3IDAgMCAxLS41NTQuMjY3IDIuNDg0IDIuNDg0IDAgMCAxLS43MTcuMDk2Yy0uMzkgMC0uNzIxLS4wNjktLjk5Mi0uMjA3YTEuNTkgMS41OSAwIDAgMS0uNjE4LS41MzggMS4yNzYgMS4yNzYgMCAwIDEtLjIwNy0uNjg2aC45MjhjLjAxLjE3OC4wNi4zMi4xNDguNDI3LjA5LjEwMy4yMDEuMTc5LjMzNC4yMjcuMTM2LjA0NS4yNzUuMDY4LjQxOS4wNjguMTcyIDAgLjMxNy0uMDIzLjQzNC0uMDY4YS42MzEuNjMxIDAgMCAwIC4yNjctLjE5MS40Ni40NiAwIDAgMCAuMDkxLS4yNzlaIi8+PC9nPjxnIGNsaXAtcGF0aD0idXJsKCNsKSI+PHBhdGggZmlsbD0iIzAwMCIgZmlsbC1vcGFjaXR5PSIuNTQiIGQ9Ik0xMDcuMTUyIDg1LjEyOHY1aC0uNjMydi00LjIxbC0xLjI3My40NjR2LS41N2wxLjgwNi0uNjg0aC4wOTlabTUuMjEyIDIuMTE4di43NThjMCAuNDA3LS4wMzYuNzUxLS4xMDkgMS4wMzEtLjA3My4yOC0uMTc4LjUwNi0uMzE0LjY3NmExLjIgMS4yIDAgMCAxLS40OTUuMzczIDEuNzY2IDEuNzY2IDAgMCAxLS42NDkuMTEyYy0uMTkxIDAtLjM2OC0uMDI0LS41My0uMDcyYTEuMjY0IDEuMjY0IDAgMCAxLS40MzctLjIyOCAxLjM5MyAxLjM5MyAwIDAgMS0uMzI3LS40MTcgMi4yMTEgMi4yMTEgMCAwIDEtLjIwOS0uNjIxIDQuNDYyIDQuNDYyIDAgMCAxLS4wNzItLjg1NHYtLjc1OGMwLS40MDguMDM3LS43NS4xMS0xLjAyNS4wNzUtLjI3NS4xODEtLjQ5Ni4zMTctLjY2Mi4xMzctLjE2OS4zMDEtLjI5LjQ5Mi0uMzYyLjE5NC0uMDczLjQxLS4xMS42NDktLjExLjE5MyAwIC4zNzEuMDI0LjUzMy4wNzIuMTY0LjA0Ni4zMDkuMTIuNDM3LjIyMi4xMjcuMS4yMzUuMjM1LjMyNC40MDMuMDkxLjE2Ni4xNjEuMzcuMjA5LjYxMS4wNDcuMjQyLjA3MS41MjUuMDcxLjg1Wm0tLjYzNS44NnYtLjk2NmMwLS4yMjMtLjAxNC0uNDItLjA0MS0uNTg4YTEuOCAxLjggMCAwIDAtLjExMy0uNDM3Ljg1NS44NTUgMCAwIDAtLjE5MS0uMjkzLjY3Ny42NzcgMCAwIDAtLjI2My0uMTY0Ljk0NC45NDQgMCAwIDAtLjMzMS0uMDU1LjkuOSAwIDAgMC0uNC4wODYuNzEzLjcxMyAwIDAgMC0uMjkzLjI2MmMtLjA3OC4xMjEtLjEzNy4yOC0uMTc4LjQ3NWEzLjU0NSAzLjU0NSAwIDAgMC0uMDYxLjcxNHYuOTY2YzAgLjIyMy4wMTIuNDIuMDM3LjU5MS4wMjguMTcuMDY3LjMxOS4xMi40NDQuMDUyLjEyMy4xMTYuMjI0LjE5MS4zMDQuMDc1LjA4LjE2Mi4xMzkuMjYuMTc4LjEuMDM2LjIxLjA1NC4zMzEuMDU0YS44OC44OCAwIDAgMCAuNDA2LS4wODkuNzMuNzMgMCAwIDAgLjI5LS4yNzZjLjA4LS4xMjguMTM5LS4yOS4xNzgtLjQ4OS4wMzktLjIuMDU4LS40MzkuMDU4LS43MTdabTQuOTM5IDEuNTAzdi41MTloLTMuMjU0di0uNDU0bDEuNjI5LTEuODE0Yy4yLS4yMjMuMzU1LS40MTIuNDY0LS41NjdhMS43NCAxLjc0IDAgMCAwIC4yMzItLjQyIDEuMSAxLjEgMCAwIDAgLjA2OC0uMzgyLjk1Ni45NTYgMCAwIDAtLjEwMi0uNDQ0Ljc2Ny43NjcgMCAwIDAtLjI5NC0uMzIxLjg4Mi44ODIgMCAwIDAtLjQ3MS0uMTIgMS4wOCAxLjA4IDAgMCAwLS41NTMuMTMuNzk4Ljc5OCAwIDAgMC0uMzI4LjM1NSAxLjIwNSAxLjIwNSAwIDAgMC0uMTA5LjUyNmgtLjYzMmMwLS4yOC4wNjEtLjUzNi4xODQtLjc2OC4xMjMtLjIzMi4zMDUtLjQxNy41NDctLjU1My4yNDEtLjE0LjUzOC0uMjA5Ljg5MS0uMjA5LjMxNCAwIC41ODMuMDU2LjgwNi4xNjguMjIzLjEwOS4zOTQuMjY0LjUxMi40NjQuMTIxLjE5OC4xODEuNDMuMTgxLjY5N2ExLjQgMS40IDAgMCAxLS4wNzUuNDQ0IDIuMjg5IDIuMjg5IDAgMCAxLS4yMDEuNDQ0IDMuNjI4IDMuNjI4IDAgMCAxLS4yOTcuNDM3IDcuMTYgNy4xNiAwIDAgMS0uMzU5LjQyM2wtMS4zMzIgMS40NDVoMi40OTNabTEuMjgyLTQuNDUzaC42MzhsMS42MjkgNC4wNTMgMS42MjYtNC4wNTNoLjY0MmwtMi4wMjIgNC45NzJoLS40OTlsLTIuMDE0LTQuOTcyWm0tLjIwOSAwaC41NjRsLjA5MiAzLjAzMnYxLjk0aC0uNjU2di00Ljk3MlptNC4zODUgMGguNTY0djQuOTcyaC0uNjU2di0xLjk0bC4wOTItMy4wMzJabTYuMDI2IDAtMi4wNzMgNS4zOTloLS41NDNsMi4wNzYtNS40aC41NFptNi4wOCA0LjQ1M3YuNTE5aC0zLjI1NHYtLjQ1NGwxLjYyOS0xLjgxNGMuMi0uMjIzLjM1NS0uNDEyLjQ2NC0uNTY3LjExMi0uMTU3LjE4OS0uMjk3LjIzMy0uNDIuMDQ1LS4xMjUuMDY4LS4yNTIuMDY4LS4zODJhLjk0NC45NDQgMCAwIDAtLjEwMy0uNDQ0Ljc3MS43NzEgMCAwIDAtLjI5My0uMzIxLjg4NS44ODUgMCAwIDAtLjQ3Mi0uMTJjLS4yMiAwLS40MDUuMDQ0LS41NTMuMTNhLjc5OC43OTggMCAwIDAtLjMyOC4zNTUgMS4yMiAxLjIyIDAgMCAwLS4xMDkuNTI2aC0uNjMyYzAtLjI4LjA2Mi0uNTM2LjE4NS0uNzY4YTEuMzYgMS4zNiAwIDAgMSAuNTQ2LS41NTNjLjI0MS0uMTQuNTM5LS4yMDkuODkxLS4yMDkuMzE1IDAgLjU4My4wNTYuODA2LjE2OC4yMjMuMTA5LjM5NC4yNjQuNTEzLjQ2NC4xMi4xOTguMTgxLjQzLjE4MS42OTcgMCAuMTQ2LS4wMjUuMjk0LS4wNzYuNDQ0YTIuMjMgMi4yMyAwIDAgMS0uMjAxLjQ0NCAzLjQxIDMuNDEgMCAwIDEtLjI5Ny40MzcgNi43OTggNi43OTggMCAwIDEtLjM1OS40MjNsLTEuMzMyIDEuNDQ1aDIuNDkzWm0xLjcwOS0xLjg0OC0uNTA2LS4xMy4yNS0yLjQ3NWgyLjU1MXYuNTg0aC0yLjAxNWwtLjE1IDEuMzUyYTEuODggMS44OCAwIDAgMSAuMzQ0LS4xNDdjLjE0Mi0uMDQ1LjMwMy0uMDY4LjQ4NS0uMDY4LjIzIDAgLjQzNi4wNC42MTkuMTIuMTgyLjA3Ny4zMzYuMTg4LjQ2NC4zMzQuMTMuMTQ2LjIyOS4zMjEuMjk3LjUyNi4wNjguMjA1LjEwMi40MzQuMTAyLjY4NiAwIC4yNC0uMDMzLjQ2LS4wOTkuNjYtLjA2My4yLS4xNi4zNzUtLjI5LjUyNS0uMTMuMTQ4LS4yOTMuMjYzLS40OTIuMzQ1YTEuNzgzIDEuNzgzIDAgMCAxLS42OTMuMTIzYy0uMiAwLS4zOS0uMDI3LS41Ny0uMDgyYTEuNDYgMS40NiAwIDAgMS0uNDc4LS4yNTYgMS4zOSAxLjM5IDAgMCAxLS4zNDItLjQzIDEuNzQ0IDEuNzQ0IDAgMCAxLS4xNjQtLjYwOGguNjAxYy4wMjguMTg3LjA4Mi4zNDQuMTY0LjQ3MWEuODAzLjgwMyAwIDAgMCAuMzIxLjI5Yy4xMzUuMDY0LjI5MS4wOTYuNDY4LjA5Ni4xNSAwIC4yODQtLjAyNi40LS4wNzhhLjc4OC43ODggMCAwIDAgLjI5My0uMjI2Yy4wOC0uMDk4LjE0LS4yMTYuMTgxLS4zNTUuMDQ0LS4xMzkuMDY1LS4yOTUuMDY1LS40NjggMC0uMTU3LS4wMjEtLjMwMy0uMDY1LS40MzdhMS4wMDMgMS4wMDMgMCAwIDAtLjE5NC0uMzUyLjg1MS44NTEgMCAwIDAtLjMxMS0uMjMyLjk5Ny45OTcgMCAwIDAtLjQyMy0uMDg1Yy0uMjEyIDAtLjM3My4wMjgtLjQ4Mi4wODVhMS44NSAxLjg1IDAgMCAwLS4zMzEuMjMyWm02LjQ4OS0uNTE1di43NThjMCAuNDA3LS4wMzYuNzUxLS4xMDkgMS4wMzEtLjA3My4yOC0uMTc4LjUwNi0uMzE0LjY3NmExLjIgMS4yIDAgMCAxLS40OTUuMzczIDEuNzY2IDEuNzY2IDAgMCAxLS42NDkuMTEyYy0uMTkyIDAtLjM2OC0uMDI0LS41My0uMDcyYTEuMjY0IDEuMjY0IDAgMCAxLS40MzctLjIyOCAxLjM5NSAxLjM5NSAwIDAgMS0uMzI4LS40MTcgMi4yNDQgMi4yNDQgMCAwIDEtLjIwOC0uNjIxIDQuNDYyIDQuNDYyIDAgMCAxLS4wNzItLjg1NHYtLjc1OGMwLS40MDguMDM3LS43NS4xMS0xLjAyNS4wNzUtLjI3NS4xODEtLjQ5Ni4zMTctLjY2Mi4xMzctLjE2OS4zMDEtLjI5LjQ5Mi0uMzYyLjE5NC0uMDczLjQxLS4xMS42NDktLjExLjE5MyAwIC4zNzEuMDI0LjUzMy4wNzIuMTY0LjA0Ni4zMDkuMTIuNDM3LjIyMi4xMjcuMS4yMzUuMjM1LjMyNC40MDMuMDkxLjE2Ni4xNjEuMzcuMjA4LjYxMS4wNDguMjQyLjA3Mi41MjUuMDcyLjg1Wm0tLjYzNS44NnYtLjk2NmMwLS4yMjMtLjAxNC0uNDItLjA0MS0uNTg4YTEuODQ4IDEuODQ4IDAgMCAwLS4xMTMtLjQzNy44Ny44NyAwIDAgMC0uMTkxLS4yOTMuNjc3LjY3NyAwIDAgMC0uMjYzLS4xNjQuOTQ0Ljk0NCAwIDAgMC0uMzMxLS4wNTUuODk4Ljg5OCAwIDAgMC0uNC4wODYuNzEzLjcxMyAwIDAgMC0uMjkzLjI2MmMtLjA3OC4xMjEtLjEzNy4yOC0uMTc4LjQ3NWEzLjU0NSAzLjU0NSAwIDAgMC0uMDYxLjcxNHYuOTY2YzAgLjIyMy4wMTIuNDIuMDM3LjU5MS4wMjcuMTcuMDY3LjMxOS4xMi40NDQuMDUyLjEyMy4xMTYuMjI0LjE5MS4zMDRhLjcyLjcyIDAgMCAwIC4yNTkuMTc4Ljk3Ljk3IDAgMCAwIC4zMzIuMDU0Yy4xNTQgMCAuMjktLjAzLjQwNi0uMDg5YS43My43MyAwIDAgMCAuMjktLjI3NmMuMDgtLjEyOC4xMzktLjI5LjE3OC0uNDg5LjAzOS0uMi4wNTgtLjQzOS4wNTgtLjcxN1ptMi4wNTMtMi45NWguNjM5bDEuNjI5IDQuMDUzIDEuNjI1LTQuMDUzaC42NDJsLTIuMDIxIDQuOTcyaC0uNDk5bC0yLjAxNS00Ljk3MlptLS4yMDggMGguNTYzbC4wOTMgMy4wMzJ2MS45NGgtLjY1NnYtNC45NzJabTQuMzg1IDBoLjU2M3Y0Ljk3MmgtLjY1NXYtMS45NGwuMDkyLTMuMDMyWiIvPjxnIGZpbGw9IiMxOTgwMzgiIGNsaXAtcGF0aD0idXJsKCNtKSI+PHJlY3Qgd2lkdGg9Ijg2LjAxMiIgaGVpZ2h0PSI0LjY2MyIgeD0iMTA0LjY2MyIgeT0iOTUuNDU5IiBmaWxsLW9wYWNpdHk9Ii4wNiIgcng9IjIuMzMxIi8+PHBhdGggZD0iTTEwNC42NjMgOTQuMjkzaDM5LjAxMnY2Ljk5NGgtMzkuMDEyeiIvPjwvZz48cGF0aCBmaWxsPSIjMTk4MDM4IiBkPSJNMTA4LjM5OSAxMDguOTE3di41MzZoLTIuNjMzdi0uNTM2aDIuNjMzWm0tMi41LTQuNDM2djQuOTcyaC0uNjU5di00Ljk3MmguNjU5Wm0yLjE1MSAyLjEzOHYuNTM2aC0yLjI4NHYtLjUzNmgyLjI4NFptLjMxNC0yLjEzOHYuNTM5aC0yLjU5OHYtLjUzOWgyLjU5OFptMS42MiAyLjA2NnYyLjkwNmgtLjYzMnYtMy42OTVoLjU5OGwuMDM0Ljc4OVptLS4xNS45MTktLjI2My0uMDExYy4wMDItLjI1Mi4wNC0uNDg2LjExMy0uNy4wNzItLjIxNi4xNzUtLjQwNC4zMDctLjU2M2ExLjM2OCAxLjM2OCAwIDAgMSAxLjA4Mi0uNTAyYy4xODMgMCAuMzQ2LjAyNS40OTIuMDc1LjE0Ni4wNDguMjcuMTI1LjM3Mi4yMzIuMTA1LjEwNy4xODUuMjQ2LjIzOS40MTcuMDU1LjE2OC4wODIuMzc0LjA4Mi42MTh2Mi40MjFoLS42MzV2LTIuNDI4YzAtLjE5My0uMDI4LS4zNDgtLjA4NS0uNDY0YS41MjIuNTIyIDAgMCAwLS4yNDktLjI1Ni44OTQuODk0IDAgMCAwLS40MDMtLjA4Mi45NC45NCAwIDAgMC0uNzYyLjM3MiAxLjM2NiAxLjM2NiAwIDAgMC0uMjE1LjM5OWMtLjA1LjE0OC0uMDc1LjMwNS0uMDc1LjQ3MlptNS43OTYgMS4zNTV2LTEuOTAyYS43NzUuNzc1IDAgMCAwLS4wODktLjM3OS41ODcuNTg3IDAgMCAwLS4yNTktLjI1My45NDguOTQ4IDAgMCAwLS40MzEtLjA4OGMtLjE1OSAwLS4yOTkuMDI3LS40Mi4wODJhLjczMS43MzEgMCAwIDAtLjI4LjIxNS40NzEuNDcxIDAgMCAwLS4wOTkuMjg3aC0uNjMyYzAtLjEzMi4wMzUtLjI2My4xMDMtLjM5M2ExLjE0IDEuMTQgMCAwIDEgLjI5NC0uMzUyYy4xMjktLjEwNy4yODQtLjE5MS40NjQtLjI1My4xODItLjA2My4zODUtLjA5NS42MDgtLjA5NS4yNjggMCAuNTA1LjA0NS43MS4xMzYuMjA3LjA5MS4zNjkuMjI5LjQ4NS40MTQuMTE4LjE4Mi4xNzguNDExLjE3OC42ODZ2MS43MjFjMCAuMTIzLjAxLjI1NC4wMy4zOTMuMDIzLjEzOS4wNTYuMjU4LjA5OS4zNTh2LjA1NWgtLjY1OWExLjE2IDEuMTYgMCAwIDEtLjA3NS0uMjkgMi4zNzMgMi4zNzMgMCAwIDEtLjAyNy0uMzQyWm0uMTA5LTEuNjA4LjAwNy40NDRoLS42MzljLS4xNzkgMC0uMzQuMDE1LS40ODEuMDQ0YTEuMTEgMS4xMSAwIDAgMC0uMzU1LjEyNy41Ny41NyAwIDAgMC0uMjk0LjUxMi42NC42NCAwIDAgMCAuMDc5LjMxNy41Ny41NyAwIDAgMCAuMjM1LjIyOS44NTIuODUyIDAgMCAwIC4zOTMuMDgyYy4xOTMgMCAuMzY0LS4wNDEuNTEyLS4xMjMuMTQ4LS4wODIuMjY1LS4xODIuMzUyLS4zYS42NDIuNjQyIDAgMCAwIC4xNDMtLjM0NWwuMjcuMzA0YS45MTMuOTEzIDAgMCAxLS4xMy4zMTcgMS41MTUgMS41MTUgMCAwIDEtLjcuNTk4IDEuMzYgMS4zNiAwIDAgMS0uNTM5LjEwMmMtLjI1MSAwLS40Ny0uMDQ5LS42NTktLjE0NmExLjEyIDEuMTIgMCAwIDEtLjQzNy0uMzkzIDEuMDM1IDEuMDM1IDAgMCAxLS4xNTQtLjU1N2MwLS4xOTguMDM5LS4zNzIuMTE2LS41MjJhLjk5OS45OTkgMCAwIDEgLjMzNS0uMzc5Yy4xNDUtLjEwMy4zMjEtLjE4LjUyNi0uMjMzLjIwNC0uMDUyLjQzMy0uMDc4LjY4Ni0uMDc4aC43MzRabTEuNzQ2LTMuMDA1aC42MzV2NC41MjhsLS4wNTQuNzE3aC0uNTgxdi01LjI0NVptMy4xMzIgMy4zNjd2LjA3MmMwIC4yNjgtLjAzMi41MTgtLjA5Ni43NDdhMS44NDkgMS44NDkgMCAwIDEtLjI4LjU5NSAxLjMwMSAxLjMwMSAwIDAgMS0uNDUxLjM5MmMtLjE3Ny4wOTQtLjM4MS4xNC0uNjExLjE0LS4yMzUgMC0uNDQxLS4wMzktLjYxOC0uMTE5YTEuMjE3IDEuMjE3IDAgMCAxLS40NDQtLjM1MiAxLjc4OCAxLjc4OCAwIDAgMS0uMjktLjU1MyAzLjQzNiAzLjQzNiAwIDAgMS0uMTQ3LS43MzF2LS4zMTRhMy40NCAzLjQ0IDAgMCAxIC4xNDctLjczNGMuMDcyLS4yMTcuMTY5LS40MDEuMjktLjU1My4xMjEtLjE1NS4yNjktLjI3My40NDQtLjM1Mi4xNzUtLjA4Mi4zNzktLjEyMy42MTEtLjEyMy4yMzIgMCAuNDM4LjA0NS42MTguMTM2LjE4LjA4OS4zMy4yMTcuNDUxLjM4My4xMjMuMTY2LjIxNi4zNjUuMjguNTk4LjA2NC4yMjkuMDk2LjQ4Ni4wOTYuNzY4Wm0tLjYzNi4wNzJ2LS4wNzJhMi41MSAyLjUxIDAgMCAwLS4wNTEtLjUxOSAxLjMzMyAxLjMzMyAwIDAgMC0uMTY0LS40My44MDUuODA1IDAgMCAwLS4yOTctLjI5NC44NzUuODc1IDAgMCAwLS40NTQtLjEwOS44OTUuODk1IDAgMCAwLS43MTQuMzAzIDEuMTc2IDEuMTc2IDAgMCAwLS4yMDEuMzE1IDEuNzkgMS43OSAwIDAgMC0uMTEzLjM2MnYuODIzYy4wMzcuMTU5LjA5Ni4zMTMuMTc4LjQ2MS4wODQuMTQ1LjE5Ni4yNjUuMzM0LjM1OC4xNDIuMDk0LjMxNi4xNC41MjMuMTRhLjg3Ny44NzcgMCAwIDAgLjQzNy0uMTAyLjgzMy44MzMgMCAwIDAgLjI5Ny0uMjkgMS4zNiAxLjM2IDAgMCAwIC4xNzEtLjQyN2MuMDM2LS4xNjIuMDU0LS4zMzUuMDU0LS41MTlabTIuMzU0LTMuNDM5djUuMjQ1aC0uNjM1di01LjI0NWguNjM1Wm0yLjc4MSA1LjMxM2MtLjI1NyAwLS40OTEtLjA0My0uNy0uMTI5YTEuNTgyIDEuNTgyIDAgMCAxLS44NzgtLjkzOSAyLjEgMi4xIDAgMCAxLS4xMTktLjcxOHYtLjE0M2MwLS4zMDEuMDQ0LS41NjguMTMzLS44MDNhMS44IDEuOCAwIDAgMSAuMzYyLS42MDFjLjE1Mi0uMTY0LjMyNS0uMjg4LjUxOS0uMzcyLjE5NC0uMDg0LjM5NC0uMTI2LjYwMS0uMTI2LjI2NCAwIC40OTIuMDQ1LjY4My4xMzYuMTk0LjA5MS4zNTIuMjE5LjQ3NS4zODMuMTIzLjE2Mi4yMTQuMzUzLjI3My41NzQuMDU5LjIxOC4wODkuNDU3LjA4OS43MTd2LjI4M2gtMi43NnYtLjUxNWgyLjEyOHYtLjA0OGExLjU0NCAxLjU0NCAwIDAgMC0uMTAzLS40NzguODQ2Ljg0NiAwIDAgMC0uMjczLS4zODNjLS4xMjUtLjEtLjI5Ni0uMTUtLjUxMi0uMTVhLjg2Ny44NjcgMCAwIDAtLjcwNy4zNTggMS4zNCAxLjM0IDAgMCAwLS4yMDEuNDM0IDIuMTk0IDIuMTk0IDAgMCAwLS4wNzIuNTkxdi4xNDNjMCAuMTc2LjAyNC4zNDEuMDcyLjQ5Ni4wNS4xNTIuMTIxLjI4Ni4yMTUuNDAzLjA5NS4xMTYuMjEuMjA3LjM0NS4yNzMuMTM2LjA2Ni4yOTEuMDk5LjQ2NC4wOTkuMjIzIDAgLjQxMi0uMDQ2LjU2Ny0uMTM3LjE1NS0uMDkxLjI5LS4yMTMuNDA2LS4zNjVsLjM4My4zMDRjLS4wOC4xMi0uMTgxLjIzNS0uMzA0LjM0NWExLjQ0NyAxLjQ0NyAwIDAgMS0uNDU0LjI2NiAxLjc2NyAxLjc2NyAwIDAgMS0uNjMyLjEwMlptNC43MzctLjc4NXYtNC41MjhoLjYzNnY1LjI0NWgtLjU4MWwtLjA1NS0uNzE3Wm0tMi40ODYtMS4wODl2LS4wNzJjMC0uMjgyLjAzNS0uNTM5LjEwMy0uNzY4YTEuODMgMS44MyAwIDAgMSAuMjk3LS41OThjLjEzLS4xNjYuMjgzLS4yOTQuNDYxLS4zODMuMTgtLjA5MS4zOC0uMTM2LjYwMS0uMTM2LjIzMiAwIC40MzUuMDQxLjYwOC4xMjMuMTc1LjA3OS4zMjMuMTk3LjQ0NC4zNTIuMTIzLjE1Mi4yMi4zMzYuMjkuNTUzLjA3MS4yMTYuMTIuNDYxLjE0Ny43MzR2LjMxNGEzLjIwNSAzLjIwNSAwIDAgMS0uMTQ3LjczMWMtLjA3LjIxNi0uMTY3LjQwMS0uMjkuNTUzLS4xMjEuMTUzLS4yNjkuMjctLjQ0NC4zNTItLjE3NS4wOC0uMzguMTE5LS42MTUuMTE5LS4yMTYgMC0uNDE0LS4wNDYtLjU5NC0uMTRhMS40IDEuNCAwIDAgMS0uNDYxLS4zOTIgMS44OTcgMS44OTcgMCAwIDEtLjI5Ny0uNTk1IDIuNjE5IDIuNjE5IDAgMCAxLS4xMDMtLjc0N1ptLjYzNi0uMDcydi4wNzJjMCAuMTg0LjAxOC4zNTcuMDU0LjUxOS4wMzkuMTYxLjA5OC4zMDQuMTc4LjQyN2EuODg3Ljg4NyAwIDAgMCAuMzA0LjI5Yy4xMjMuMDY4LjI3LjEwMi40NC4xMDIuMjEgMCAuMzgyLS4wNDQuNTE2LS4xMzNhLjk5Ljk5IDAgMCAwIC4zMjgtLjM1MmMuMDgyLS4xNDUuMTQ1LS4zMDQuMTkxLS40NzR2LS44MjNhMS43NDggMS43NDggMCAwIDAtLjEyLS4zNjIgMS4xMiAxLjEyIDAgMCAwLS4xOTgtLjMxNS44MzguODM4IDAgMCAwLS4yOTctLjIyMS45NTcuOTU3IDAgMCAwLS40MTMtLjA4Mi44NzEuODcxIDAgMCAwLS40NDcuMTA5Ljg1NS44NTUgMCAwIDAtLjMwNC4yOTRjLS4wOC4xMjItLjEzOS4yNjYtLjE3OC40M2EyLjM3NSAyLjM3NSAwIDAgMC0uMDU0LjUxOVpNMTg2LjAxMiAxMDMuNTY4YTMuODg3IDMuODg3IDAgMCAwIDAgNy43NzEgMy44ODcgMy44ODcgMCAwIDAgMC03Ljc3MVptLS43NzcgNS44MjktMS45NDMtMS45NDMuNTQ4LS41NDggMS4zOTUgMS4zOTEgMi45NDktMi45NDkuNTQ4LjU1Mi0zLjQ5NyAzLjQ5N1oiLz48L2c+PHBhdGggZmlsbD0iIzAwMCIgZmlsbC1vcGFjaXR5PSIuMTIiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZD0iTTIwMCAxMTcuNjk5SDB2LS41ODNoMjAwdi41ODNaIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiLz48ZyBjbGlwLXBhdGg9InVybCgjbikiPjxwYXRoIGZpbGw9IiMzMDU2ODAiIGQ9Ik0xMi4zMDEgMTMyLjI4M3YtNC4wNTloLjk5NnY0LjA1OWMwIC4zODUtLjA4Mi43MTQtLjI0Ny45ODQtLjE2NC4yNzEtLjM4OS40NzktLjY3My42MjJhMi4xMjQgMi4xMjQgMCAwIDEtLjk2OC4yMTVjLS4zNyAwLS42OTctLjA2Mi0uOTg0LS4xODdhMS40NyAxLjQ3IDAgMCAxLS42Ny0uNTc0Yy0uMTYyLS4yNTgtLjI0My0uNTg0LS4yNDMtLjk4aDEuMDA1YzAgLjIyOC4wMzUuNDEzLjEwNy41NTRhLjY4Ny42ODcgMCAwIDAgLjMxLjMwM2MuMTM2LjA2MS4yOTQuMDkxLjQ3NS4wOTFhLjg5Ny44OTcgMCAwIDAgLjQ1OC0uMTE1LjgzLjgzIDAgMCAwIC4zMTktLjM0N2MuMDc3LS4xNTQuMTE1LS4zNDMuMTE1LS41NjZabTQuNjI4Ljg3N3YtMi4wNTZhLjg3OC44NzggMCAwIDAtLjA4My0uMzk4LjU4My41ODMgMCAwIDAtLjI1NS0uMjU5Ljg3My44NzMgMCAwIDAtLjQyMy0uMDkyLjk1OC45NTggMCAwIDAtLjQwNi4wOC42NTguNjU4IDAgMCAwLS4yNjcuMjE1LjUxOC41MTggMCAwIDAtLjA5Ni4zMDdoLS45NTZjMC0uMTcuMDQxLS4zMzUuMTI0LS40OTQuMDgyLS4xNi4yMDEtLjMwMi4zNTgtLjQyNy4xNTctLjEyNS4zNDQtLjIyMy41NjItLjI5NS4yMTgtLjA3MS40NjItLjEwNy43MzMtLjEwNy4zMjQgMCAuNjEuMDU0Ljg2LjE2My4yNTMuMTA5LjQ1LjI3NC41OTQuNDk0LjE0Ni4yMTguMjIuNDkyLjIyLjgyMXYxLjkxNmMwIC4xOTcuMDEzLjM3NC4wNC41My4wMjguMTU0LjA3LjI4OC4xMjMuNDAzdi4wNjNoLS45ODRhMS42OTMgMS42OTMgMCAwIDEtLjEwOC0uMzk0IDMuMjI0IDMuMjI0IDAgMCAxLS4wMzYtLjQ3Wm0uMTQtMS43NTcuMDA4LjU5M2gtLjY5YTEuOTQgMS45NCAwIDAgMC0uNDcuMDUyLjk2NC45NjQgMCAwIDAtLjMzOC4xNDQuNjExLjYxMSAwIDAgMC0uMjA0LjIzMS42NzQuNjc0IDAgMCAwLS4wNjcuMzA3YzAgLjExNC4wMjYuMjE5LjA4LjMxNC4wNTMuMDkzLjEzLjE2Ni4yMy4yMTkuMTA0LjA1NC4yMjkuMDguMzc1LjA4LjE5NiAwIC4zNjgtLjA0LjUxNC0uMTE5LjE0OS0uMDgzLjI2NS0uMTgyLjM1LS4yOTlhLjY1NC42NTQgMCAwIDAgLjEzNi0uMzM5bC4zMS40MjZhMS40NjMgMS40NjMgMCAwIDEtLjE2My4zNTEgMS43MiAxLjcyIDAgMCAxLS4zMDIuMzU5Yy0uMTIzLjExMS0uMjcuMjAzLS40NDMuMjc1YTEuNTIgMS41MiAwIDAgMS0uNTkuMTA3Yy0uMjggMC0uNTMyLS4wNTYtLjc1Mi0uMTY3YTEuMzM5IDEuMzM5IDAgMCAxLS41MTgtLjQ1OCAxLjE5IDEuMTkgMCAwIDEtLjE4OC0uNjU4YzAtLjIyOC4wNDMtLjQzLjEyOC0uNjA1LjA4OC0uMTc4LjIxNS0uMzI3LjM4My0uNDQ3LjE3LS4xMTkuMzc3LS4yMDkuNjIxLS4yNzFhMy4zNiAzLjM2IDAgMCAxIC44MzctLjA5NWguNzUzWm0zLjMxMyAxLjg2IDEuMDU1LTMuNTQ5aC45OTdsLTEuNDk4IDQuMzFoLS42MjJsLjA2OC0uNzYxWm0tLjgwOS0zLjU0OSAxLjA3NiAzLjU2NS4wNTIuNzQ1aC0uNjIybC0xLjUwNi00LjMxaDFabTUuOTY2IDMuNDQ2di0yLjA1NmEuODc4Ljg3OCAwIDAgMC0uMDgzLS4zOTguNTgzLjU4MyAwIDAgMC0uMjU1LS4yNTkuODczLjg3MyAwIDAgMC0uNDIyLS4wOTIuOTU4Ljk1OCAwIDAgMC0uNDA3LjA4LjY1OC42NTggMCAwIDAtLjI2Ny4yMTUuNTE4LjUxOCAwIDAgMC0uMDk1LjMwN2gtLjk1N2MwLS4xNy4wNDItLjMzNS4xMjQtLjQ5NC4wODItLjE2LjIwMi0uMzAyLjM1OC0uNDI3LjE1Ny0uMTI1LjM0NC0uMjIzLjU2Mi0uMjk1LjIxOC0uMDcxLjQ2Mi0uMTA3LjczMy0uMTA3LjMyNCAwIC42MTEuMDU0Ljg2LjE2My4yNTMuMTA5LjQ1MS4yNzQuNTk1LjQ5NC4xNDYuMjE4LjIxOS40OTIuMjE5LjgyMXYxLjkxNmMwIC4xOTcuMDEzLjM3NC4wNC41My4wMjkuMTU0LjA3LjI4OC4xMjMuNDAzdi4wNjNoLS45ODRhMS42OTggMS42OTggMCAwIDEtLjEwOC0uMzk0IDMuMjI0IDMuMjI0IDAgMCAxLS4wMzUtLjQ3Wm0uMTQtMS43NTcuMDA4LjU5M2gtLjY5YTEuOTQgMS45NCAwIDAgMC0uNDcuMDUyLjk2NC45NjQgMCAwIDAtLjMzOC4xNDQuNjExLjYxMSAwIDAgMC0uMjAzLjIzMS42NzQuNjc0IDAgMCAwLS4wNjguMzA3YzAgLjExNC4wMjcuMjE5LjA4LjMxNC4wNTMuMDkzLjEzLjE2Ni4yMy4yMTkuMTA0LjA1NC4yMy4wOC4zNzUuMDguMTk3IDAgLjM2OC0uMDQuNTE0LS4xMTkuMTQ5LS4wODMuMjY2LS4xODIuMzUtLjI5OWEuNjU0LjY1NCAwIDAgMCAuMTM2LS4zMzlsLjMxMS40MjZhMS40NiAxLjQ2IDAgMCAxLS4xNjMuMzUxIDEuNzE2IDEuNzE2IDAgMCAxLS4zMDMuMzU5Yy0uMTIyLjExMS0uMjcuMjAzLS40NDIuMjc1YTEuNTIgMS41MiAwIDAgMS0uNTkuMTA3Yy0uMjgyIDAtLjUzMy0uMDU2LS43NTMtLjE2N2ExLjMzOSAxLjMzOSAwIDAgMS0uNTE4LS40NTggMS4xOSAxLjE5IDAgMCAxLS4xODctLjY1OGMwLS4yMjguMDQyLS40My4xMjctLjYwNS4wODgtLjE3OC4yMTUtLjMyNy4zODMtLjQ0N2ExLjg4IDEuODggMCAwIDEgLjYyMS0uMjcxIDMuMzYgMy4zNiAwIDAgMSAuODM3LS4wOTVoLjc1M1ptNS4xMjIgMS4xMjdhLjg1Ljg1IDAgMCAwLS4wNTYtLjMxOC42MjEuNjIxIDAgMCAwLS4xODctLjI1NSAxLjUyNCAxLjUyNCAwIDAgMC0uMzgzLS4yMjMgNC45NTggNC45NTggMCAwIDAtLjYyMS0uMjI4IDcuMDIyIDcuMDIyIDAgMCAxLS43NjUtLjI4MiAyLjk1MyAyLjk1MyAwIDAgMS0uNjA2LS4zNjcgMS41NjcgMS41NjcgMCAwIDEtLjQwMi0uNDgyIDEuMzQ5IDEuMzQ5IDAgMCAxLS4xNDQtLjYzNGMwLS4yMzYuMDUtLjQ1MS4xNDgtLjY0NS4xLS4xOTQuMjQzLS4zNjEuNDI2LS41MDJhMi4wNSAyLjA1IDAgMCAxIC42NTgtLjMzMSAyLjc5IDIuNzkgMCAwIDEgLjgzNi0uMTE5Yy40MyAwIC44MDEuMDggMS4xMTIuMjM5LjMxMy4xNTkuNTU0LjM3My43Mi42NDEuMTcuMjY5LjI1Ni41NjUuMjU2Ljg4OUgzMC44YzAtLjE5MS0uMDQxLS4zNi0uMTI0LS41MDZhLjgzNy44MzcgMCAwIDAtLjM2Ni0uMzUxYy0uMTYyLS4wODUtLjM2OC0uMTI3LS42MTgtLjEyN2ExLjQzIDEuNDMgMCAwIDAtLjU5LjEwNy43OS43OSAwIDAgMC0uMzUuMjkxLjc2Ljc2IDAgMCAwLS4xMTYuNDE0YzAgLjEwOS4wMjYuMjA5LjA3Ni4yOTlhLjgzLjgzIDAgMCAwIC4yMzEuMjQ3Yy4xMDQuMDc1LjIzNC4xNDUuMzkuMjExLjE1Ny4wNjcuMzQyLjEzMS41NTUuMTkyLjMyLjA5NS42MDEuMjAyLjg0LjMxOC4yNC4xMTUuNDM4LjI0NS41OTguMzkxYTEuNDQyIDEuNDQyIDAgMCAxIC40NzggMS4xMjNjMCAuMjQ1LS4wNS40NjUtLjE0OC42NjItLjA5OC4xOTQtLjIzOS4zNi0uNDIyLjQ5OC0uMTguMTM1LS4zOTguMjQtLjY1My4zMTVhMy4xMTUgMy4xMTUgMCAwIDEtLjg0NS4xMDdjLS4yNzkgMC0uNTU0LS4wMzctLjgyNS0uMTExYTIuNDU4IDIuNDU4IDAgMCAxLS43MzMtLjMzOSAxLjc0NCAxLjc0NCAwIDAgMS0uNTI2LS41NzRjLS4xMy0uMjMxLS4xOTUtLjUtLjE5NS0uODA5aDFjMCAuMTg5LjAzMi4zNS4wOTYuNDgyYS44ODguODg4IDAgMCAwIC4yNzUuMzI3Yy4xMTYuMDgzLjI1Mi4xNDQuNDA2LjE4My4xNTcuMDQuMzI0LjA2LjUwMi4wNi4yMzQgMCAuNDI5LS4wMzMuNTg2LS4wOTlhLjc4Ljc4IDAgMCAwIC4zNTgtLjI3OWMuMDgtLjEyLjEyLS4yNTguMTItLjQxNVptMy43LjgwOWMuMTU2IDAgLjI5Ny0uMDMuNDIyLS4wOTFhLjgwNy44MDcgMCAwIDAgLjMwNi0uMjYzLjcyMS43MjEgMCAwIDAgLjEzMi0uMzg3aC45MDRhMS4zNDYgMS4zNDYgMCAwIDEtLjI0Ny43NjFjLS4xNTkuMjI4LS4zNy40MS0uNjMzLjU0NmExLjkwNSAxLjkwNSAwIDAgMS0uODczLjE5OWMtLjMyOSAwLS42MTYtLjA1Ni0uODYtLjE2N2ExLjcgMS43IDAgMCAxLS42MS0uNDcgMi4wNzUgMi4wNzUgMCAwIDEtLjM2Ni0uNjljLS4wOC0uMjYtLjEyLS41MzktLjEyLS44MzZ2LS4xNGMwLS4yOTcuMDQtLjU3Ni4xMi0uODM2LjA4Mi0uMjYzLjIwNC0uNDk0LjM2Ni0uNjk0YTEuNjcgMS42NyAwIDAgMSAuNjEtLjQ2NmMuMjQ0LS4xMTQuNTMtLjE3MS44NTYtLjE3MS4zNDYgMCAuNjQ4LjA2OS45MDkuMjA3LjI2LjEzNi40NjUuMzI1LjYxMy41Ny4xNTIuMjQyLjIzLjUyMy4yMzUuODQ0aC0uOTA0YS45NjYuOTY2IDAgMCAwLS4xMi0uNDMuNzkuNzkgMCAwIDAtLjI5NC0uMzExLjg0Ljg0IDAgMCAwLS40NS0uMTE1LjkuOSAwIDAgMC0uNDgzLjExOS44MDcuODA3IDAgMCAwLS4yOTkuMzE5IDEuNTU4IDEuNTU4IDAgMCAwLS4xNTUuNDVjLS4wMy4xNjUtLjA0NC4zMzYtLjA0NC41MTR2LjE0YzAgLjE3OC4wMTUuMzUuMDQ0LjUxOC4wMy4xNjcuMDguMzE3LjE1MS40NS4wNzUuMTMuMTc2LjIzNS4zMDMuMzE1LjEyOC4wNzcuMjkuMTE1LjQ4Ni4xMTVabTMuNjExLTIuODA1djMuNDloLS45NnYtNC4zMWguOTE2bC4wNDQuODJabTEuMzE5LS44NDgtLjAwOC44OTJhMi4zNCAyLjM0IDAgMCAwLS4zOS0uMDMyYy0uMTY1IDAtLjMxLjAyNC0uNDM1LjA3MmEuODI0LjgyNCAwIDAgMC0uMzE0LjE5OS44NzkuODc5IDAgMCAwLS4xOTIuMzExIDEuMzg2IDEuMzg2IDAgMCAwLS4wOC40MWwtLjIxOC4wMTZjMC0uMjcxLjAyNi0uNTIyLjA4LS43NTMuMDUyLS4yMzEuMTMyLS40MzQuMjM4LS42MDkuMTEtLjE3Ni4yNDUtLjMxMi40MDctLjQxMS4xNjQtLjA5OC4zNTQtLjE0Ny41Ny0uMTQ3LjA1OCAwIC4xMi4wMDUuMTg3LjAxNmEuNzEuNzEgMCAwIDEgLjE1NS4wMzZabTEuNzc1LjAyOHY0LjMxaC0uOTY0di00LjMxaC45NjRabS0xLjAyOC0xLjEzMmEuNDkuNDkgMCAwIDEgLjE0NC0uMzYyLjU0Ni41NDYgMCAwIDEgLjQwNi0uMTQ4Yy4xNyAwIC4zMDQuMDQ5LjQwMy4xNDhhLjQ4My40ODMgMCAwIDEgLjE0Ny4zNjIuNDguNDggMCAwIDEtLjE0Ny4zNTkuNTU1LjU1NSAwIDAgMS0uNDAzLjE0My41Ni41NiAwIDAgMS0uNDA2LS4xNDMuNDg3LjQ4NyAwIDAgMS0uMTQ0LS4zNTlabTMuMTkgMS45NnY1LjE0aC0uOTZ2LTUuOTY4aC44ODRsLjA3Ni44MjhabTIuODA5IDEuMjg3di4wODRjMCAuMzEzLS4wMzcuNjA0LS4xMTIuODcyYTIuMTQgMi4xNCAwIDAgMS0uMzIyLjY5OGMtLjE0MS4xOTYtLjMxNS4zNDktLjUyMy40NThhMS41MTcgMS41MTcgMCAwIDEtLjcxNy4xNjNjLS4yNjggMC0uNTAzLS4wNDktLjcwNS0uMTQ3YTEuNDQgMS40NCAwIDAgMS0uNTA2LS40MjcgMi4zMSAyLjMxIDAgMCAxLS4zMzQtLjY0NSA0LjEzNyA0LjEzNyAwIDAgMS0uMTc2LS44MjF2LS4zMjJjLjAzNS0uMzE3LjA5My0uNjAzLjE3Ni0uODYxLjA4NS0uMjU4LjE5Ni0uNDc5LjMzNC0uNjY1LjEzOC0uMTg2LjMwNy0uMzMuNTA2LS40MzEuMi0uMTAxLjQzMi0uMTUxLjY5Ny0uMTUxLjI3MSAwIC41MTIuMDUzLjcyMi4xNTkuMjEuMTA0LjM4Ni4yNTMuNTMuNDQ2LjE0My4xOTIuMjUuNDIzLjMyMi42OTQuMDcyLjI2OC4xMDguNTY3LjEwOC44OTZabS0uOTYuMDg0di0uMDg0YzAtLjE5OS0uMDE5LS4zODQtLjA1Ni0uNTU0YTEuNDUgMS40NSAwIDAgMC0uMTc1LS40NTQuODM4LjgzOCAwIDAgMC0uNzQ5LS40MTRjLS4xNyAwLS4zMTcuMDI5LS40MzkuMDg3YS44NDQuODQ0IDAgMCAwLS4zMDcuMjM2Yy0uMDgyLjEtLjE0Ni4yMTktLjE5LjM1NGEyLjEzMyAyLjEzMyAwIDAgMC0uMDk2LjQzNHYuNzczYy4wMzEuMTkyLjA4Ni4zNjcuMTYzLjUyNi4wNzcuMTYuMTg2LjI4Ny4zMjcuMzgzYS45OTMuOTkzIDAgMCAwIC41NS4xMzljLjE3MiAwIC4zMi0uMDM3LjQ0Mi0uMTExYS44NzguODc4IDAgMCAwIC4yOTktLjMwN2MuMDgtLjEzMy4xMzgtLjI4Ni4xNzUtLjQ1OGEyLjYxIDIuNjEgMCAwIDAgLjA1Ni0uNTVabTMuODk4LTIuMTk5di43MDFoLTIuNDN2LS43MDFoMi40M1ptLTEuNzI5LTEuMDU2aC45NnY0LjE3NWMwIC4xMzMuMDE5LjIzNS4wNTYuMzA3LjA0LjA2OS4wOTQuMTE1LjE2My4xMzkuMDcuMDI0LjE1LjAzNi4yNDQuMDM2YTEuOTEgMS45MSAwIDAgMCAuMzM5LS4wMzZsLjAwMy43MzNhMi4zMSAyLjMxIDAgMCAxLS4yNzkuMDY0IDIuMDA5IDIuMDA5IDAgMCAxLS4zNTguMDI4Yy0uMjIgMC0uNDE2LS4wMzgtLjU4Ni0uMTE1YS44NjUuODY1IDAgMCAxLS4zOTgtLjM4N2MtLjA5Ni0uMTc4LS4xNDQtLjQxNC0uMTQ0LS43MDl2LTQuMjM1Wm02LjA5MiA1LjM2NmgtLjk2di00LjcyNWMwLS4zMjEuMDYtLjU5MS4xOC0uODA5LjEyMi0uMjIuMjk2LS4zODYuNTIyLS40OTguMjI1LS4xMTQuNDkyLS4xNzEuOC0uMTcxLjA5NiAwIC4xOS4wMDcuMjgzLjAyLjA5My4wMTEuMTg0LjAyOC4yNzEuMDUybC0uMDI0Ljc0MWExLjEgMS4xIDAgMCAwLS4xNzUtLjAyOCAyLjQ0MiAyLjQ0MiAwIDAgMC0uMi0uMDA4LjgwMS44MDEgMCAwIDAtLjM3OC4wODQuNTUuNTUgMCAwIDAtLjIzOS4yMzUuODMuODMgMCAwIDAtLjA4LjM4MnY0LjcyNVptLjg4OS00LjMxdi43MDFoLTIuNTF2LS43MDFoMi41MVptMy40MzcgMy4yOTR2LTMuMjk0aC45NjR2NC4zMWgtLjkwOWwtLjA1NS0xLjAxNlptLjEzNS0uODk2LjMyMy0uMDA4YzAgLjI5LS4wMzIuNTU3LS4wOTYuODAxYTEuODQ1IDEuODQ1IDAgMCAxLS4yOTUuNjMzIDEuMzggMS4zOCAwIDAgMS0uNTEuNDE5IDEuNzMgMS43MyAwIDAgMS0uNzQ1LjE0N2MtLjIxIDAtLjQwMi0uMDMtLjU3Ny0uMDkyYTEuMTg3IDEuMTg3IDAgMCAxLS40NTUtLjI4MiAxLjI5NSAxLjI5NSAwIDAgMS0uMjktLjQ5OCAyLjMwNSAyLjMwNSAwIDAgMS0uMTA0LS43MzR2LTIuNzg0aC45NnYyLjc5MmMwIC4xNTcuMDE5LjI4OS4wNTYuMzk1YS42NzUuNjc1IDAgMCAwIC4xNTEuMjUxLjUzLjUzIDAgMCAwIC4yMjQuMTM1Ljg5Ljg5IDAgMCAwIC4yNy4wNGMuMjc0IDAgLjQ5LS4wNTMuNjQ2LS4xNTlhLjg4Mi44ODIgMCAwIDAgLjMzOS0uNDM4IDEuNzUgMS43NSAwIDAgMCAuMTAzLS42MThabTIuOTEtMS40Nzh2My4zOWgtLjk2di00LjMxaC45MDVsLjA1Ni45MlptLS4xNyAxLjA3Ni0uMzExLS4wMDRhMi44IDIuOCAwIDAgMSAuMTI3LS44NDFjLjA4NS0uMjU1LjIwMi0uNDc0LjM1LS42NTdhMS41NSAxLjU1IDAgMCAxIC41NDMtLjQyM2MuMjEtLjEwMS40NDMtLjE1MS43LS4xNTEuMjA4IDAgLjM5NS4wMjkuNTYzLjA4OC4xNy4wNTUuMzE0LjE0Ny40MzQuMjc0LjEyMi4xMjguMjE1LjI5NC4yNzkuNDk4LjA2NC4yMDIuMDk1LjQ1MS4wOTUuNzQ2djIuNzg0aC0uOTY0di0yLjc4OGMwLS4yMDgtLjAzLS4zNzEtLjA5MS0uNDkxYS41MS41MSAwIDAgMC0uMjYtLjI1OC45NTguOTU4IDAgMCAwLS40MTgtLjA4LjkzLjkzIDAgMCAwLS43NzMuMzg2IDEuMzggMS4zOCAwIDAgMC0uMjAzLjQxNSAxLjcwOCAxLjcwOCAwIDAgMC0uMDcyLjUwMlptNS42NjcgMS42MjlhLjk1Ljk1IDAgMCAwIC40MjItLjA5MS44MDYuODA2IDAgMCAwIC4zMDctLjI2My43MjEuNzIxIDAgMCAwIC4xMzItLjM4N2guOTA0YTEuMzQ1IDEuMzQ1IDAgMCAxLS4yNDcuNzYxYy0uMTYuMjI4LS4zNy40MS0uNjMzLjU0NmExLjkwNSAxLjkwNSAwIDAgMS0uODczLjE5OWMtLjMzIDAtLjYxNi0uMDU2LS44Ni0uMTY3YTEuNzAzIDEuNzAzIDAgMCAxLS42MS0uNDcgMi4wNzMgMi4wNzMgMCAwIDEtLjM2Ny0uNjkgMi44NCAyLjg0IDAgMCAxLS4xMi0uODM2di0uMTRjMC0uMjk3LjA0LS41NzYuMTItLjgzNi4wODMtLjI2My4yMDUtLjQ5NC4zNjctLjY5NGExLjY3IDEuNjcgMCAwIDEgLjYxLS40NjZjLjI0NC0uMTE0LjUzLS4xNzEuODU2LS4xNzEuMzQ1IDAgLjY0OC4wNjkuOTA5LjIwNy4yNi4xMzYuNDY0LjMyNS42MTMuNTcuMTUxLjI0Mi4yMy41MjMuMjM1Ljg0NGgtLjkwNGEuOTY2Ljk2NiAwIDAgMC0uMTItLjQzLjc5MS43OTEgMCAwIDAtLjI5NS0uMzExLjg0MS44NDEgMCAwIDAtLjQ1LS4xMTUuOS45IDAgMCAwLS40ODIuMTE5LjgwNy44MDcgMCAwIDAtLjI5OS4zMTkgMS41NTggMS41NTggMCAwIDAtLjE1NS40NWMtLjAzLjE2NS0uMDQ0LjMzNi0uMDQ0LjUxNHYuMTRjMCAuMTc4LjAxNS4zNS4wNDQuNTE4LjAzLjE2Ny4wOC4zMTcuMTUxLjQ1LjA3NS4xMy4xNzYuMjM1LjMwMy4zMTUuMTI4LjA3Ny4yOS4xMTUuNDg2LjExNVptNC42MjQtMy42MjV2LjcwMWgtMi40M3YtLjcwMWgyLjQzWm0tMS43My0xLjA1NmguOTYxdjQuMTc1YzAgLjEzMy4wMTkuMjM1LjA1Ni4zMDcuMDQuMDY5LjA5NC4xMTUuMTYzLjEzOS4wNy4wMjQuMTUuMDM2LjI0My4wMzZhMS45MSAxLjkxIDAgMCAwIC4zMzktLjAzNmwuMDA0LjczM2EyLjMxIDIuMzEgMCAwIDEtLjI3OS4wNjQgMi4wMDkgMi4wMDkgMCAwIDEtLjM1OS4wMjhjLS4yMiAwLS40MTUtLjAzOC0uNTg1LS4xMTVhLjg2NS44NjUgMCAwIDEtLjM5OS0uMzg3Yy0uMDk1LS4xNzgtLjE0My0uNDE0LS4xNDMtLjcwOXYtNC4yMzVabTMuNjQ1IDEuMDU2djQuMzFoLS45NjV2LTQuMzFoLjk2NVptLTEuMDI4LTEuMTMyYS40OS40OSAwIDAgMSAuMTQzLS4zNjIuNTQ3LjU0NyAwIDAgMSAuNDA3LS4xNDhjLjE3IDAgLjMwNC4wNDkuNDAyLjE0OGEuNDgyLjQ4MiAwIDAgMSAuMTQ3LjM2Mi40OC40OCAwIDAgMS0uMTQ3LjM1OS41NTUuNTU1IDAgMCAxLS40MDIuMTQzLjU2LjU2IDAgMCAxLS40MDctLjE0My40ODcuNDg3IDAgMCAxLS4xNDMtLjM1OVptMi4wNDIgMy4zMzV2LS4wOTJjMC0uMzExLjA0NS0uNTk5LjEzNS0uODY0LjA5LS4yNjkuMjItLjUwMS4zOS0uNjk4LjE3My0uMTk5LjM4My0uMzUzLjYzLS40NjIuMjUtLjExMS41MzEtLjE2Ny44NDUtLjE2Ny4zMTYgMCAuNTk4LjA1Ni44NDUuMTY3LjI1LjEwOS40Ni4yNjMuNjMzLjQ2Mi4xNzMuMTk3LjMwNC40MjkuMzk1LjY5OC4wOS4yNjUuMTM1LjU1My4xMzUuODY0di4wOTJjMCAuMzExLS4wNDUuNTk5LS4xMzUuODY0LS4wOS4yNjYtLjIyMi40OTgtLjM5NS42OThhMS44NCAxLjg0IDAgMCAxLS42My40NjIgMi4wNjIgMi4wNjIgMCAwIDEtLjg0LjE2M2MtLjMxNiAwLS41OTktLjA1NC0uODQ5LS4xNjNhMS44NCAxLjg0IDAgMCAxLS42My0uNDYyIDIuMDc3IDIuMDc3IDAgMCAxLS4zOTQtLjY5OCAyLjY2MyAyLjY2MyAwIDAgMS0uMTM1LS44NjRabS45Ni0uMDkydi4wOTJjMCAuMTk0LjAyLjM3Ny4wNi41NWExLjQgMS40IDAgMCAwIC4xODcuNDU0Yy4wODUuMTMuMTk0LjIzMi4zMjcuMzA3YS45Ni45NiAwIDAgMCAuNDc0LjExMS45Mi45MiAwIDAgMCAuNDYyLS4xMTEuOTM0LjkzNCAwIDAgMCAuMzI3LS4zMDcgMS40IDEuNCAwIDAgMCAuMTg3LS40NTRjLjA0My0uMTczLjA2NC0uMzU2LjA2NC0uNTV2LS4wOTJhMi4yMyAyLjIzIDAgMCAwLS4wNjQtLjU0MiAxLjM5NiAxLjM5NiAwIDAgMC0uMTkxLS40NTguODk5Ljg5OSAwIDAgMC0uNzkzLS40MjYuOTIuOTIgMCAwIDAtLjQ3LjExNS45My45MyAwIDAgMC0uMzIzLjMxMSAxLjQ1MSAxLjQ1MSAwIDAgMC0uMTg3LjQ1OGMtLjA0LjE3LS4wNi4zNTEtLjA2LjU0MlptNC45NS0xLjE5MXYzLjM5aC0uOTZ2LTQuMzFoLjkwNWwuMDU2LjkyWm0tLjE3IDEuMDc2LS4zMTEtLjAwNGMuMDAyLS4zMDYuMDQ1LS41ODYuMTI3LS44NDEuMDg1LS4yNTUuMjAyLS40NzQuMzUtLjY1N2ExLjU1IDEuNTUgMCAwIDEgLjU0Mi0uNDIzYy4yMS0uMTAxLjQ0NC0uMTUxLjcwMi0uMTUxLjIwNyAwIC4zOTQuMDI5LjU2MS4wODguMTcuMDU1LjMxNS4xNDcuNDM1LjI3NC4xMjIuMTI4LjIxNS4yOTQuMjc5LjQ5OC4wNjMuMjAyLjA5NS40NTEuMDk1Ljc0NnYyLjc4NGgtLjk2NHYtMi43ODhjMC0uMjA4LS4wMy0uMzcxLS4wOTEtLjQ5MWEuNTEuNTEgMCAwIDAtLjI2LS4yNTguOTU4Ljk1OCAwIDAgMC0uNDE4LS4wOC45My45MyAwIDAgMC0uNzczLjM4NmMtLjA4Ny4xMi0uMTU1LjI1OC0uMjAzLjQxNWExLjcwOCAxLjcwOCAwIDAgMC0uMDcyLjUwMlptLTY3LjkyIDEzLjM5NGEyLjMxIDIuMzEgMCAwIDEtLjg2NC0uMTU1IDEuOTE1IDEuOTE1IDAgMCAxLS42NTMtLjQ0MyAxLjk1MyAxLjk1MyAwIDAgMS0uNDEtLjY2NSAyLjMzIDIuMzMgMCAwIDEtLjE0NC0uODI1di0uMTU5YzAtLjMzNy4wNS0uNjQzLjE0Ny0uOTE2YTIuMDggMi4wOCAwIDAgMSAuNDEtLjcwMmMuMTc2LS4xOTYuMzgzLS4zNDYuNjIyLS40NS4yNC0uMTAzLjQ5OC0uMTU1Ljc3Ny0uMTU1LjMwOCAwIC41NzguMDUyLjgwOS4xNTUuMjMxLjEwNC40MjIuMjUuNTc0LjQzOS4xNTQuMTg1LjI2OC40MDcuMzQyLjY2NS4wNzcuMjU4LjExNi41NDIuMTE2Ljg1MnYuNDExaC0zLjMzdi0uNjg5aDIuMzgydi0uMDc2YTEuMzQ1IDEuMzQ1IDAgMCAwLS4xMDQtLjQ4Ni44MjQuODI0IDAgMCAwLS4yODMtLjM2N2MtLjEyNy0uMDkzLS4yOTctLjEzOS0uNTEtLjEzOWEuODY3Ljg2NyAwIDAgMC0uNDI2LjEwMy44NTMuODUzIDAgMCAwLS4zMDcuMjkxIDEuNTQyIDEuNTQyIDAgMCAwLS4xOTEuNDYyIDIuNjAxIDIuNjAxIDAgMCAwLS4wNjQuNjAydi4xNTljMCAuMTg5LjAyNS4zNjQuMDc2LjUyNi4wNTMuMTYuMTMuMjk5LjIzLjQxOS4xMDIuMTE5LjIyNC4yMTMuMzY3LjI4My4xNDQuMDY2LjMwNy4wOTkuNDkuMDk5LjIzMiAwIC40MzctLjA0Ni42MTgtLjEzOS4xOC0uMDkzLjMzNy0uMjI1LjQ3LS4zOTVsLjUwNi40OWExLjgxOCAxLjgxOCAwIDAgMS0uOTA4LjY5Yy0uMjEzLjA3Ny0uNDYuMTE1LS43NDEuMTE1Wm0zLjM1NC00LjM5LjgyIDEuNDMuODM3LTEuNDNoMS4wNTZsLTEuMzA3IDIuMTE1IDEuMzU5IDIuMTk1aC0xLjA1NmwtLjg3Ny0xLjQ5LS44NzYgMS40OWgtMS4wNmwxLjM1NS0yLjE5NS0xLjMwMy0yLjExNWgxLjA1MlptNS4zMzcgNC4zOWEyLjMxIDIuMzEgMCAwIDEtLjg2NS0uMTU1IDEuOTE1IDEuOTE1IDAgMCAxLS42NTMtLjQ0MyAxLjk1MiAxLjk1MiAwIDAgMS0uNDEtLjY2NSAyLjMzMSAyLjMzMSAwIDAgMS0uMTQ0LS44MjV2LS4xNTljMC0uMzM3LjA0OS0uNjQzLjE0Ny0uOTE2LjA5OS0uMjc0LjIzNS0uNTA4LjQxLS43MDIuMTc2LS4xOTYuMzgzLS4zNDYuNjIyLS40NS4yNC0uMTAzLjQ5OC0uMTU1Ljc3Ny0uMTU1LjMwOCAwIC41NzguMDUyLjgwOS4xNTUuMjMuMTA0LjQyMi4yNS41NzQuNDM5LjE1NC4xODUuMjY4LjQwNy4zNDIuNjY1LjA3Ny4yNTguMTE2LjU0Mi4xMTYuODUydi40MTFoLTMuMzMxdi0uNjg5aDIuMzgzdi0uMDc2YTEuMzQzIDEuMzQzIDAgMCAwLS4xMDQtLjQ4Ni44MjMuODIzIDAgMCAwLS4yODMtLjM2N2MtLjEyNy0uMDkzLS4yOTctLjEzOS0uNTEtLjEzOWEuODY2Ljg2NiAwIDAgMC0uNDI2LjEwMy44NTMuODUzIDAgMCAwLS4zMDcuMjkxIDEuNTQyIDEuNTQyIDAgMCAwLS4xOTEuNDYyIDIuNjAxIDIuNjAxIDAgMCAwLS4wNjQuNjAydi4xNTljMCAuMTg5LjAyNS4zNjQuMDc2LjUyNi4wNTMuMTYuMTMuMjk5LjIzLjQxOS4xMDIuMTE5LjIyNC4yMTMuMzY3LjI4My4xNDQuMDY2LjMwNy4wOTkuNDkuMDk5LjIzMiAwIC40MzctLjA0Ni42MTgtLjEzOS4xOC0uMDkzLjMzNy0uMjI1LjQ3LS4zOTVsLjUwNi40OWExLjgxOSAxLjgxOSAwIDAgMS0uOTA4LjY5Yy0uMjEzLjA3Ny0uNDYuMTE1LS43NDEuMTE1Wm00LjM4LS43NjVjLjE1NyAwIC4yOTgtLjAzLjQyMy0uMDkxYS44MDcuODA3IDAgMCAwIC4zMDctLjI2My43Mi43MiAwIDAgMCAuMTMxLS4zODdoLjkwNGExLjM0NSAxLjM0NSAwIDAgMS0uMjQ3Ljc2MWMtLjE1OS4yMjgtLjM3LjQxLS42MzMuNTQ2YTEuOTA0IDEuOTA0IDAgMCAxLS44NzMuMTk5Yy0uMzI5IDAtLjYxNi0uMDU2LS44Ni0uMTY3YTEuNzAxIDEuNzAxIDAgMCAxLS42MS0uNDcgMi4wNzUgMi4wNzUgMCAwIDEtLjM2Ni0uNjljLS4wOC0uMjYtLjEyLS41MzktLjEyLS44MzZ2LS4xNGMwLS4yOTcuMDQtLjU3Ni4xMi0uODM2LjA4Mi0uMjYzLjIwNC0uNDk0LjM2Ni0uNjk0YTEuNjcgMS42NyAwIDAgMSAuNjEtLjQ2NmMuMjQ0LS4xMTQuNTMtLjE3MS44NTYtLjE3MS4zNDYgMCAuNjQ5LjA2OS45MDkuMjA3LjI2LjEzNi40NjUuMzI1LjYxMy41Ny4xNTIuMjQyLjIzLjUyMy4yMzUuODQ0aC0uOTA0YS45NjQuOTY0IDAgMCAwLS4xMi0uNDMuNzkuNzkgMCAwIDAtLjI5NC0uMzExLjg0Ljg0IDAgMCAwLS40NS0uMTE1LjkuOSAwIDAgMC0uNDgzLjExOS44MDcuODA3IDAgMCAwLS4yOTguMzE5IDEuNTU4IDEuNTU4IDAgMCAwLS4xNTYuNDVjLS4wMjkuMTY1LS4wNDQuMzM2LS4wNDQuNTE0di4xNGMwIC4xNzguMDE1LjM1LjA0NC41MTguMDMuMTY3LjA4LjMxNy4xNTIuNDUuMDc0LjEzLjE3NS4yMzUuMzAyLjMxNS4xMjguMDc3LjI5LjExNS40ODcuMTE1Wm01LjI0Mi0uMzMxdi0zLjI5NGguOTY0djQuMzFoLS45MDhsLS4wNTYtMS4wMTZabS4xMzUtLjg5Ni4zMjMtLjAwOGMwIC4yOS0uMDMyLjU1Ny0uMDk2LjgwMWExLjg0NSAxLjg0NSAwIDAgMS0uMjk0LjYzMyAxLjM4IDEuMzggMCAwIDEtLjUxLjQxOSAxLjczIDEuNzMgMCAwIDEtLjc0NS4xNDdjLS4yMSAwLS40MDMtLjAzLS41NzgtLjA5MmExLjE4NyAxLjE4NyAwIDAgMS0uNDU0LS4yODIgMS4yOTUgMS4yOTUgMCAwIDEtLjI5MS0uNDk4IDIuMzA1IDIuMzA1IDAgMCAxLS4xMDQtLjczNHYtMi43ODRoLjk2djIuNzkyYzAgLjE1Ny4wMi4yODkuMDU2LjM5NWEuNjc1LjY3NSAwIDAgMCAuMTUyLjI1MS41My41MyAwIDAgMCAuMjIzLjEzNS44OS44OSAwIDAgMCAuMjcuMDRjLjI3NCAwIC40OS0uMDUzLjY0Ni0uMTU5YS44ODIuODgyIDAgMCAwIC4zMzktLjQzOCAxLjc1IDEuNzUgMCAwIDAgLjEwMy0uNjE4Wm0zLjkzNS0yLjM5OHYuNzAxaC0yLjQzdi0uNzAxaDIuNDNabS0xLjczLTEuMDU2aC45NjF2NC4xNzVjMCAuMTMzLjAxOS4yMzUuMDU2LjMwNy4wNC4wNjkuMDk0LjExNS4xNjMuMTM5YS43NC43NCAwIDAgMCAuMjQzLjAzNiAxLjkwMSAxLjkwMSAwIDAgMCAuMzM5LS4wMzZsLjAwNC43MzNjLS4wOC4wMjQtLjE3My4wNDYtLjI4LjA2NGEyLjAwOCAyLjAwOCAwIDAgMS0uMzU4LjAyOGMtLjIyIDAtLjQxNS0uMDM4LS41ODUtLjExNWEuODY1Ljg2NSAwIDAgMS0uMzk5LS4zODdjLS4wOTUtLjE3OC0uMTQzLS40MTQtLjE0My0uNzA5di00LjIzNVptMy42NDUgMS4wNTZ2NC4zMWgtLjk2NXYtNC4zMWguOTY1Wm0tMS4wMjgtMS4xMzJhLjQ5LjQ5IDAgMCAxIC4xNDMtLjM2Mi41NDcuNTQ3IDAgMCAxIC40MDctLjE0OGMuMTcgMCAuMzA0LjA0OS40MDIuMTQ4YS40ODIuNDgyIDAgMCAxIC4xNDcuMzYyLjQ4LjQ4IDAgMCAxLS4xNDcuMzU5LjU1NS41NTUgMCAwIDEtLjQwMy4xNDMuNTYuNTYgMCAwIDEtLjQwNi0uMTQzLjQ4Ny40ODcgMCAwIDEtLjE0My0uMzU5Wm0yLjA0MiAzLjMzNXYtLjA5MmMwLS4zMTEuMDQ1LS41OTkuMTM1LS44NjQuMDktLjI2OS4yMi0uNTAxLjM5LS42OTguMTczLS4xOTkuMzgzLS4zNTMuNjMtLjQ2Mi4yNS0uMTExLjUzMi0uMTY3Ljg0NS0uMTY3LjMxNiAwIC41OTguMDU2Ljg0NS4xNjcuMjUuMTA5LjQ2LjI2My42MzMuNDYyLjE3My4xOTcuMzA0LjQyOS4zOTUuNjk4LjA5LjI2NS4xMzUuNTUzLjEzNS44NjR2LjA5MmMwIC4zMTEtLjA0NS41OTktLjEzNi44NjQtLjA5LjI2Ni0uMjIxLjQ5OC0uMzk0LjY5OGExLjg0IDEuODQgMCAwIDEtLjYzLjQ2MiAyLjA2MiAyLjA2MiAwIDAgMS0uODQuMTYzIDIuMSAyLjEgMCAwIDEtLjg0OS0uMTYzIDEuODM5IDEuODM5IDAgMCAxLS42My0uNDYyIDIuMDc1IDIuMDc1IDAgMCAxLS4zOTQtLjY5OCAyLjY2MyAyLjY2MyAwIDAgMS0uMTM1LS44NjRabS45Ni0uMDkydi4wOTJjMCAuMTk0LjAyLjM3Ny4wNi41NS4wNC4xNzIuMTAyLjMyNC4xODcuNDU0cy4xOTQuMjMyLjMyNy4zMDdhLjk2Ljk2IDAgMCAwIC40NzQuMTExLjkyLjkyIDAgMCAwIC40NjItLjExMS45MzQuOTM0IDAgMCAwIC4zMjctLjMwNyAxLjQgMS40IDAgMCAwIC4xODctLjQ1NGMuMDQyLS4xNzMuMDY0LS4zNTYuMDY0LS41NXYtLjA5MmEyLjIzIDIuMjMgMCAwIDAtLjA2NC0uNTQyIDEuMzk5IDEuMzk5IDAgMCAwLS4xOTEtLjQ1OC45LjkgMCAwIDAtLjc5My0uNDI2LjkyLjkyIDAgMCAwLS40Ny4xMTUuOTMuOTMgMCAwIDAtLjMyMy4zMTEgMS40NTQgMS40NTQgMCAwIDAtLjE4Ny40NThjLS4wNC4xNy0uMDYuMzUxLS4wNi41NDJabTQuOTUtMS4xOTF2My4zOWgtLjk2di00LjMxaC45MDVsLjA1Ni45MlptLS4xNyAxLjA3Ni0uMzEyLS4wMDRjLjAwMy0uMzA2LjA0Ni0uNTg2LjEyOC0uODQxLjA4NS0uMjU1LjIwMi0uNDc0LjM1LS42NTdhMS41NSAxLjU1IDAgMCAxIC41NDMtLjQyM2MuMjEtLjEwMS40NDMtLjE1MS43LS4xNTEuMjA4IDAgLjM5NS4wMjkuNTYzLjA4OC4xNy4wNTUuMzE0LjE0Ny40MzQuMjc0LjEyMi4xMjguMjE1LjI5NC4yNzkuNDk4LjA2My4yMDIuMDk1LjQ1MS4wOTUuNzQ2djIuNzg0aC0uOTY0di0yLjc4OGMwLS4yMDgtLjAzLS4zNzEtLjA5Mi0uNDkxYS41MS41MSAwIDAgMC0uMjU4LS4yNTguOTU4Ljk1OCAwIDAgMC0uNDE5LS4wOC45My45MyAwIDAgMC0uNzczLjM4NmMtLjA4Ny4xMi0uMTU1LjI1OC0uMjAzLjQxNWExLjcwOCAxLjcwOCAwIDAgMC0uMDcyLjUwMlptNi4zMjQgMS4xNDdhLjQ4LjQ4IDAgMCAwLS4wNzEtLjI1OWMtLjA0OC0uMDgtLjE0LS4xNTEtLjI3NS0uMjE1YTIuNjQ2IDIuNjQ2IDAgMCAwLS41OS0uMTc1IDUuMTk0IDUuMTk0IDAgMCAxLS42My0uMTggMS45NyAxLjk3IDAgMCAxLS40ODUtLjI1OSAxLjA5IDEuMDkgMCAwIDEtLjMxNS0uMzU4Ljk5NS45OTUgMCAwIDEtLjExMi0uNDc4YzAtLjE3Ni4wMzktLjM0Mi4xMTYtLjQ5OC4wNzctLjE1Ny4xODctLjI5NS4zMy0uNDE1LjE0NC0uMTE5LjMxOC0uMjEzLjUyMi0uMjgzLjIwOC0uMDY5LjQzOS0uMTAzLjY5NC0uMTAzLjM2IDAgLjY3LjA2MS45MjguMTgzLjI2LjEyLjQ2LjI4My41OTguNDkuMTM4LjIwNS4yMDcuNDM2LjIwNy42OTNoLS45NmEuNjEuNjEgMCAwIDAtLjA4OC0uMzE4LjYwOS42MDkgMCAwIDAtLjI1NS0uMjQzLjg3MS44NzEgMCAwIDAtLjQzLS4wOTYuOTM1LjkzNSAwIDAgMC0uNDEuMDguNTYuNTYgMCAwIDAtLjI0LjE5OS41MS41MSAwIDAgMC0uMDM2LjQ2Ni40NS40NSAwIDAgMCAuMTQ0LjE1NWMuMDY2LjA0Ni4xNTcuMDg4LjI3LjEyOC4xMTguMDQuMjY0LjA3OC40MzkuMTE2LjMzLjA2OS42MTIuMTU4Ljg0OS4yNjYuMjM5LjEwNy40MjIuMjQ1LjU1LjQxNS4xMjcuMTY3LjE5LjM4LjE5LjYzNyAwIC4xOTItLjA0LjM2Ny0uMTIzLjUyNi0uMDguMTU3LS4xOTYuMjk0LS4zNS40MTFhMS43NDcgMS43NDcgMCAwIDEtLjU1NC4yNjYgMi40ODQgMi40ODQgMCAwIDEtLjcxNy4wOTZjLS4zOSAwLS43MjEtLjA2OS0uOTkyLS4yMDdhMS41ODIgMS41ODIgMCAwIDEtLjYxOC0uNTM4IDEuMjczIDEuMjczIDAgMCAxLS4yMDctLjY4NWguOTI4Yy4wMS4xNzguMDYuMzIuMTQ4LjQyNmEuNzkuNzkgMCAwIDAgLjMzNC4yMjdjLjEzNi4wNDUuMjc1LjA2OC40MTkuMDY4LjE3MiAwIC4zMTctLjAyMy40MzQtLjA2OGEuNjIzLjYyMyAwIDAgMCAuMjY3LS4xOTEuNDU1LjQ1NSAwIDAgMCAuMDkxLS4yNzlaIi8+PC9nPjxnIGNsaXAtcGF0aD0idXJsKCNvKSI+PHBhdGggZmlsbD0iIzAwMCIgZmlsbC1vcGFjaXR5PSIuNTQiIGQ9Ik0xMDguMTk3IDEyNi40Nzl2Ljc1OGMwIC40MDgtLjAzNi43NTItLjEwOSAxLjAzMi0uMDczLjI4LS4xNzguNTA1LS4zMTQuNjc2YTEuMiAxLjIgMCAwIDEtLjQ5Ni4zNzIgMS43NjEgMS43NjEgMCAwIDEtLjY0OC4xMTNjLS4xOTIgMC0uMzY4LS4wMjQtLjUzLS4wNzJhMS4yNjMgMS4yNjMgMCAwIDEtLjQzNy0uMjI5IDEuMzkzIDEuMzkzIDAgMCAxLS4zMjgtLjQxNyAyLjIyNyAyLjIyNyAwIDAgMS0uMjA4LS42MjEgNC40NjQgNC40NjQgMCAwIDEtLjA3Mi0uODU0di0uNzU4YzAtLjQwNy4wMzctLjc0OS4xMS0xLjAyNC4wNzUtLjI3Ni4xODEtLjQ5Ny4zMTctLjY2My4xMzctLjE2OC4zMDEtLjI4OS40OTItLjM2Mi4xOTMtLjA3My40MS0uMTA5LjY0OS0uMTA5LjE5MyAwIC4zNzEuMDI0LjUzMy4wNzJhMS4xOTggMS4xOTggMCAwIDEgLjc2MS42MjRjLjA5MS4xNjcuMTYxLjM3LjIwOC42MTIuMDQ4LjI0MS4wNzIuNTI1LjA3Mi44NVptLS42MzUuODYxdi0uOTY3YTMuNzQgMy43NCAwIDAgMC0uMDQxLS41ODcgMS44MzQgMS44MzQgMCAwIDAtLjExMy0uNDM3Ljg2Ni44NjYgMCAwIDAtLjE5MS0uMjk0LjY3Ni42NzYgMCAwIDAtLjI2My0uMTY0Ljk1My45NTMgMCAwIDAtLjMzMS0uMDU1Ljg5OC44OTggMCAwIDAtLjQuMDg2LjcxMy43MTMgMCAwIDAtLjI5My4yNjNjLS4wNzguMTItLjEzNy4yNzktLjE3OC40NzRhMy41NSAzLjU1IDAgMCAwLS4wNjEuNzE0di45NjdjMCAuMjIzLjAxMi40Mi4wMzcuNTlhMS45IDEuOSAwIDAgMCAuMTIuNDQ0Yy4wNTIuMTIzLjExNi4yMjUuMTkxLjMwNC4wNzUuMDguMTYxLjEzOS4yNTkuMTc4YS45OC45OCAwIDAgMCAuMzMyLjA1NWMuMTU0IDAgLjI5LS4wMy40MDYtLjA4OWEuNzMxLjczMSAwIDAgMCAuMjktLjI3N2MuMDgtLjEyNy4xMzktLjI5LjE3OC0uNDg4YTMuODIgMy44MiAwIDAgMCAuMDU4LS43MTdabTUuOTE2LTIuOTUxLTIuMDcyIDUuMzk5aC0uNTQzbDIuMDc2LTUuMzk5aC41MzlabTQuODk5LS4wMjd2NC45OTloLS42MzF2LTQuMjFsLTEuMjc0LjQ2NHYtLjU3bDEuODA2LS42ODNoLjA5OVptNS4yMTMgMi4xMTd2Ljc1OGMwIC40MDgtLjAzNy43NTItLjExIDEuMDMyLS4wNzMuMjgtLjE3Ny41MDUtLjMxNC42NzYtLjEzNy4xNy0uMzAyLjI5NS0uNDk1LjM3MmExLjc2NyAxLjc2NyAwIDAgMS0uNjQ5LjExM2MtLjE5MSAwLS4zNjgtLjAyNC0uNTI5LS4wNzJhMS4yNDUgMS4yNDUgMCAwIDEtLjQzNy0uMjI5IDEuMzc4IDEuMzc4IDAgMCAxLS4zMjgtLjQxNyAyLjIyNyAyLjIyNyAwIDAgMS0uMjA5LS42MjEgNC41NTMgNC41NTMgMCAwIDEtLjA3MS0uODU0di0uNzU4YzAtLjQwNy4wMzYtLjc0OS4xMDktMS4wMjQuMDc1LS4yNzYuMTgxLS40OTcuMzE4LS42NjMuMTM2LS4xNjguMy0uMjg5LjQ5MS0uMzYyYTEuODMgMS44MyAwIDAgMSAuNjQ5LS4xMDljLjE5NCAwIC4zNzEuMDI0LjUzMy4wNzIuMTY0LjA0NS4zMS4xMTkuNDM3LjIyMi4xMjguMS4yMzYuMjM0LjMyNC40MDIuMDkyLjE2Ny4xNjEuMzcuMjA5LjYxMi4wNDguMjQxLjA3Mi41MjUuMDcyLjg1Wm0tLjYzNi44NjF2LS45NjdjMC0uMjIzLS4wMTMtLjQxOS0uMDQxLS41ODdhMS44MzcgMS44MzcgMCAwIDAtLjExMi0uNDM3Ljg1My44NTMgMCAwIDAtLjE5Mi0uMjk0LjY2OS42NjkgMCAwIDAtLjI2My0uMTY0Ljk1Ljk1IDAgMCAwLS4zMzEtLjA1NS44OTQuODk0IDAgMCAwLS4zOTkuMDg2LjcyMi43MjIgMCAwIDAtLjI5NC4yNjNjLS4wNzcuMTItLjEzNy4yNzktLjE3OC40NzRhMy41NSAzLjU1IDAgMCAwLS4wNjEuNzE0di45NjdjMCAuMjIzLjAxMi40Mi4wMzcuNTkuMDI4LjE3MS4wNjguMzE5LjEyLjQ0NC4wNTIuMTIzLjExNi4yMjUuMTkxLjMwNC4wNzUuMDguMTYyLjEzOS4yNi4xNzguMS4wMzYuMjEuMDU1LjMzMS4wNTUuMTU1IDAgLjI5LS4wMy40MDYtLjA4OWEuNzM0LjczNCAwIDAgMCAuMjkxLS4yNzdjLjA3OS0uMTI3LjEzOS0uMjkuMTc3LS40ODhhMy44MiAzLjgyIDAgMCAwIC4wNTgtLjcxN1ptMi4wNTQtMi45NTFoLjYzOGwxLjYyOSA0LjA1NCAxLjYyNi00LjA1NGguNjQybC0yLjAyMiA0Ljk3MmgtLjQ5OWwtMi4wMTQtNC45NzJabS0uMjA5IDBoLjU2NGwuMDkyIDMuMDMzdjEuOTM5aC0uNjU2di00Ljk3MlptNC4zODUgMGguNTY0djQuOTcyaC0uNjU2di0xLjkzOWwuMDkyLTMuMDMzWiIvPjxnIGNsaXAtcGF0aD0idXJsKCNwKSI+PHJlY3Qgd2lkdGg9Ijg2LjAxMiIgaGVpZ2h0PSI0LjY2MyIgeD0iMTA0LjY2MyIgeT0iMTM0LjY5MiIgZmlsbD0iIzE5ODAzOCIgZmlsbC1vcGFjaXR5PSIuMDYiIHJ4PSIyLjMzMSIvPjwvZz48cGF0aCBmaWxsPSIjMTk4MDM4IiBkPSJNMTA4LjM5OSAxNDguMTV2LjUzN2gtMi42MzN2LS41MzdoMi42MzNabS0yLjUtNC40MzZ2NC45NzNoLS42NTl2LTQuOTczaC42NTlabTIuMTUxIDIuMTM4di41MzZoLTIuMjg0di0uNTM2aDIuMjg0Wm0uMzE0LTIuMTM4di41NGgtMi41OTh2LS41NGgyLjU5OFptMS42MiAyLjA2NnYyLjkwN2gtLjYzMnYtMy42OTVoLjU5OGwuMDM0Ljc4OFptLS4xNS45MTktLjI2My0uMDFjLjAwMi0uMjUzLjA0LS40ODYuMTEzLS43LjA3Mi0uMjE3LjE3NS0uNDA0LjMwNy0uNTY0YTEuMzggMS4zOCAwIDAgMSAxLjA4Mi0uNTAyYy4xODMgMCAuMzQ2LjAyNS40OTIuMDc1YS44OS44OSAwIDAgMSAuMzcyLjIzM2MuMTA1LjEwNy4xODUuMjQ1LjIzOS40MTYuMDU1LjE2OS4wODIuMzc1LjA4Mi42MTh2Mi40MjJoLS42MzV2LTIuNDI5YzAtLjE5My0uMDI4LS4zNDgtLjA4NS0uNDY0YS41MjYuNTI2IDAgMCAwLS4yNDktLjI1Ni44OTQuODk0IDAgMCAwLS40MDMtLjA4Mi45NC45NCAwIDAgMC0uNzYyLjM3MiAxLjM1OSAxLjM1OSAwIDAgMC0uMjE1LjRjLS4wNS4xNDgtLjA3NS4zMDUtLjA3NS40NzFabTUuNzk2IDEuMzU2di0xLjkwMmEuNzcyLjc3MiAwIDAgMC0uMDg5LS4zNzkuNTc3LjU3NyAwIDAgMC0uMjU5LS4yNTMuOTQ4Ljk0OCAwIDAgMC0uNDMxLS4wODljLS4xNTkgMC0uMjk5LjAyNy0uNDIuMDgyYS43NC43NCAwIDAgMC0uMjguMjE1LjQ3My40NzMgMCAwIDAtLjA5OS4yODdoLS42MzJjMC0uMTMyLjAzNS0uMjYzLjEwMy0uMzkzLjA2OC0uMTI5LjE2Ni0uMjQ3LjI5NC0uMzUxLjEyOS0uMTA3LjI4NC0uMTkyLjQ2NC0uMjUzLjE4Mi0uMDY0LjM4NS0uMDk2LjYwOC0uMDk2LjI2OCAwIC41MDUuMDQ2LjcxLjEzNy4yMDcuMDkxLjM2OS4yMjkuNDg1LjQxMy4xMTguMTgyLjE3OC40MTEuMTc4LjY4NnYxLjcyMmMwIC4xMjMuMDEuMjUzLjAzLjM5Mi4wMjMuMTM5LjA1Ni4yNTkuMDk5LjM1OXYuMDU1aC0uNjU5YTEuMTcgMS4xNyAwIDAgMS0uMDc1LS4yOTEgMi4zNyAyLjM3IDAgMCAxLS4wMjctLjM0MVptLjEwOS0xLjYwOS4wMDcuNDQ0aC0uNjM5Yy0uMTc5IDAtLjM0LjAxNS0uNDgxLjA0NS0uMTQxLjAyNy0uMjYuMDY5LS4zNTUuMTI2YS41Ny41NyAwIDAgMC0uMjk0LjUxMmMwIC4xMTYuMDI2LjIyMi4wNzkuMzE4YS41NzcuNTc3IDAgMCAwIC4yMzUuMjI5Ljg2NS44NjUgMCAwIDAgLjM5My4wODIgMS4wNjcgMS4wNjcgMCAwIDAgLjg2NC0uNDI0LjYzNi42MzYgMCAwIDAgLjE0My0uMzQ1bC4yNy4zMDRhLjkxLjkxIDAgMCAxLS4xMy4zMTggMS41MSAxLjUxIDAgMCAxLS43LjU5NyAxLjM0MiAxLjM0MiAwIDAgMS0uNTM5LjEwMyAxLjQxIDEuNDEgMCAwIDEtLjY1OS0uMTQ3IDEuMDMyIDEuMDMyIDAgMCAxLS41OTEtLjk0OWMwLS4xOTguMDM5LS4zNzMuMTE2LS41MjMuMDc3LS4xNTIuMTg5LS4yNzkuMzM1LS4zNzkuMTQ1LS4xMDIuMzIxLS4xOC41MjYtLjIzMi4yMDQtLjA1My40MzMtLjA3OS42ODYtLjA3OWguNzM0Wm0xLjc0Ni0zLjAwNWguNjM1djQuNTI4bC0uMDU0LjcxOGgtLjU4MXYtNS4yNDZabTMuMTMyIDMuMzY3di4wNzJjMCAuMjY5LS4wMzIuNTE4LS4wOTYuNzQ4YTEuODM0IDEuODM0IDAgMCAxLS4yOC41OTQgMS4zMDQgMS4zMDQgMCAwIDEtLjQ1MS4zOTNjLS4xNzcuMDkzLS4zODEuMTQtLjYxMS4xNC0uMjM1IDAtLjQ0MS0uMDQtLjYxOC0uMTJhMS4yMjQgMS4yMjQgMCAwIDEtLjQ0NC0uMzUxIDEuNzk0IDEuNzk0IDAgMCAxLS4yOS0uNTU0IDMuNDQgMy40NCAwIDAgMS0uMTQ3LS43M3YtLjMxNWEzLjQ0IDMuNDQgMCAwIDEgLjE0Ny0uNzM0Yy4wNzItLjIxNi4xNjktLjQwMS4yOS0uNTUzLjEyMS0uMTU1LjI2OS0uMjcyLjQ0NC0uMzUyLjE3NS0uMDgyLjM3OS0uMTIzLjYxMS0uMTIzLjIzMiAwIC40MzguMDQ2LjYxOC4xMzcuMTguMDg5LjMzLjIxNi40NTEuMzgyLjEyMy4xNjYuMjE2LjM2Ni4yOC41OTguMDY0LjIzLjA5Ni40ODYuMDk2Ljc2OFptLS42MzYuMDcydi0uMDcyYzAtLjE4NC0uMDE3LS4zNTctLjA1MS0uNTE5YTEuMzQyIDEuMzQyIDAgMCAwLS4xNjQtLjQzLjgyLjgyIDAgMCAwLS4yOTctLjI5NC44NzUuODc1IDAgMCAwLS40NTQtLjEwOS45ODUuOTg1IDAgMCAwLS40MTcuMDgyLjkxMi45MTIgMCAwIDAtLjI5Ny4yMjIgMS4xNyAxLjE3IDAgMCAwLS4yMDEuMzE0IDEuODEgMS44MSAwIDAgMC0uMTEzLjM2MnYuODIzYy4wMzcuMTU5LjA5Ni4zMTMuMTc4LjQ2MS4wODQuMTQ2LjE5Ni4yNjUuMzM0LjM1OS4xNDIuMDkzLjMxNi4xNC41MjMuMTRhLjg2Ny44NjcgMCAwIDAgLjQzNy0uMTAzLjgxNy44MTcgMCAwIDAgLjI5Ny0uMjkgMS4zNSAxLjM1IDAgMCAwIC4xNzEtLjQyN2MuMDM2LS4xNjIuMDU0LS4zMzUuMDU0LS41MTlabTIuMzU0LTMuNDM5djUuMjQ2aC0uNjM1di01LjI0NmguNjM1Wm0yLjc4MSA1LjMxNGMtLjI1NyAwLS40OTEtLjA0My0uNy0uMTNhMS41OTMgMS41OTMgMCAwIDEtLjUzNi0uMzcyIDEuNjczIDEuNjczIDAgMCAxLS4zNDItLjU2NyAyLjA5OSAyLjA5OSAwIDAgMS0uMTE5LS43MTd2LS4xNDRjMC0uMy4wNDQtLjU2OC4xMzMtLjgwMmExLjc5IDEuNzkgMCAwIDEgLjM2Mi0uNjAxIDEuNTM1IDEuNTM1IDAgMCAxIDEuMTItLjQ5OWMuMjY0IDAgLjQ5Mi4wNDYuNjgzLjEzNy4xOTQuMDkxLjM1Mi4yMTguNDc1LjM4Mi4xMjMuMTYyLjIxNC4zNTMuMjczLjU3NC4wNTkuMjE5LjA4OS40NTguMDg5LjcxN3YuMjg0aC0yLjc2di0uNTE2aDIuMTI4di0uMDQ4YTEuNTUgMS41NSAwIDAgMC0uMTAzLS40NzguODQzLjg0MyAwIDAgMC0uMjczLS4zODJjLS4xMjUtLjEwMS0uMjk2LS4xNTEtLjUxMi0uMTUxYS44NTYuODU2IDAgMCAwLS43MDcuMzU5IDEuMzMgMS4zMyAwIDAgMC0uMjAxLjQzNCAyLjE4IDIuMTggMCAwIDAtLjA3Mi41OXYuMTQ0YzAgLjE3NS4wMjQuMzQuMDcyLjQ5NS4wNS4xNTIuMTIxLjI4Ny4yMTUuNDAzLjA5NS4xMTYuMjEuMjA3LjM0NS4yNzMuMTM2LjA2Ni4yOTEuMDk5LjQ2NC4wOTkuMjIzIDAgLjQxMi0uMDQ1LjU2Ny0uMTM2LjE1NS0uMDkyLjI5LS4yMTMuNDA2LS4zNjZsLjM4My4zMDRhMS43NiAxLjc2IDAgMCAxLS4zMDQuMzQ1IDEuNDQ3IDEuNDQ3IDAgMCAxLS40NTQuMjY2IDEuNzQ0IDEuNzQ0IDAgMCAxLS42MzIuMTAzWm00LjczNy0uNzg2di00LjUyOGguNjM2djUuMjQ2aC0uNTgxbC0uMDU1LS43MThabS0yLjQ4Ni0xLjA4OXYtLjA3MmMwLS4yODIuMDM1LS41MzguMTAzLS43NjhhMS44NCAxLjg0IDAgMCAxIC4yOTctLjU5OCAxLjMxMiAxLjMxMiAwIDAgMSAxLjA2Mi0uNTE5Yy4yMzIgMCAuNDM1LjA0MS42MDguMTIzLjE3NS4wOC4zMjMuMTk3LjQ0NC4zNTIuMTIzLjE1Mi4yMi4zMzcuMjkuNTUzLjA3MS4yMTYuMTIuNDYxLjE0Ny43MzRWMTQ3Yy0uMDI1LjI3LS4wNzQuNTE0LS4xNDcuNzMtLjA3LjIxNy0uMTY3LjQwMS0uMjkuNTU0YTEuMjI0IDEuMjI0IDAgMCAxLS40NDQuMzUxYy0uMTc1LjA4LS4zOC4xMi0uNjE1LjEyLS4yMTYgMC0uNDE0LS4wNDctLjU5NC0uMTRhMS40MDMgMS40MDMgMCAwIDEtLjQ2MS0uMzkzIDEuODggMS44OCAwIDAgMS0uMjk3LS41OTQgMi42MjYgMi42MjYgMCAwIDEtLjEwMy0uNzQ4Wm0uNjM2LS4wNzJ2LjA3MmMwIC4xODQuMDE4LjM1Ny4wNTQuNTE5LjAzOS4xNjIuMDk4LjMwNC4xNzguNDI3LjA3OS4xMjMuMTgxLjIyLjMwNC4yOS4xMjMuMDY5LjI3LjEwMy40NC4xMDMuMjEgMCAuMzgyLS4wNDUuNTE2LS4xMzRhLjk4Ny45ODcgMCAwIDAgLjMyOC0uMzUxYy4wODItLjE0Ni4xNDUtLjMwNC4xOTEtLjQ3NXYtLjgyM2ExLjc2NyAxLjc2NyAwIDAgMC0uMTItLjM2MiAxLjExNSAxLjExNSAwIDAgMC0uMTk4LS4zMTQuODUzLjg1MyAwIDAgMC0uMjk3LS4yMjIuOTU3Ljk1NyAwIDAgMC0uNDEzLS4wODIuODcxLjg3MSAwIDAgMC0uNDQ3LjEwOS44NzIuODcyIDAgMCAwLS4zMDQuMjk0Yy0uMDguMTIzLS4xMzkuMjY2LS4xNzguNDNhMi4zODkgMi4zODkgMCAwIDAtLjA1NC41MTlaIi8+PGcgY2xpcC1wYXRoPSJ1cmwoI3EpIj48cGF0aCBmaWxsPSIjMTk4MDM4IiBkPSJNMTg2LjAxMiAxNDIuODAyYTMuODg2IDMuODg2IDAgMSAwIC4wMDIgNy43NzIgMy44ODYgMy44ODYgMCAwIDAtLjAwMi03Ljc3MlptLS43NzcgNS44MjgtMS45NDMtMS45NDMuNTQ4LS41NDggMS4zOTUgMS4zOTEgMi45NDktMi45NDkuNTQ4LjU1Mi0zLjQ5NyAzLjQ5N1oiLz48L2c+PC9nPjwvZz48cmVjdCB3aWR0aD0iMTk5LjQxNyIgaGVpZ2h0PSIxNTkuNDE3IiB4PSIuMjkxIiB5PSIuMjkxIiBzdHJva2U9IiMwMDAiIHN0cm9rZS1vcGFjaXR5PSIuMTIiIHN0cm9rZS13aWR0aD0iLjU4MyIgcng9IjMuNjI2Ii8+PC9nPjxkZWZzPjxjbGlwUGF0aCBpZD0iYSI+PHJlY3Qgd2lkdGg9IjIwMCIgaGVpZ2h0PSIxNjAiIGZpbGw9IiNmZmYiIHJ4PSI0Ii8+PC9jbGlwUGF0aD48Y2xpcFBhdGggaWQ9ImMiPjxyZWN0IHdpZHRoPSIyMDAiIGhlaWdodD0iMTYwIiBmaWxsPSIjZmZmIiByeD0iMy45MTgiLz48L2NsaXBQYXRoPjxjbGlwUGF0aCBpZD0iZCI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTkuMzI1IDBIMTAwdjM4LjY1SDkuMzI1eiIvPjwvY2xpcFBhdGg+PGNsaXBQYXRoIGlkPSJlIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMTAwIDBoOTAuNjc1djM4LjY1SDEwMHoiLz48L2NsaXBQYXRoPjxjbGlwUGF0aCBpZD0iZiI+PHJlY3Qgd2lkdGg9Ijg2LjAxMiIgaGVpZ2h0PSI0LjY2MyIgeD0iMTA0LjY2MyIgeT0iMTYuOTkzIiBmaWxsPSIjZmZmIiByeD0iMi4zMzEiLz48L2NsaXBQYXRoPjxjbGlwUGF0aCBpZD0iZyI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTkuMzI1IDM5LjIzM0gxMDB2MzguNjVIOS4zMjV6Ii8+PC9jbGlwUGF0aD48Y2xpcFBhdGggaWQ9ImgiPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik0xMDAgMzkuMjMzaDkwLjY3NXYzOC42NUgxMDB6Ii8+PC9jbGlwUGF0aD48Y2xpcFBhdGggaWQ9ImkiPjxyZWN0IHdpZHRoPSI4Ni4wMTIiIGhlaWdodD0iNC42NjMiIHg9IjEwNC42NjMiIHk9IjU2LjIyNyIgZmlsbD0iI2ZmZiIgcng9IjIuMzMxIi8+PC9jbGlwUGF0aD48Y2xpcFBhdGggaWQ9ImoiPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik0xODEuMzUgNjMuNTU5aDkuMzI1djkuMzI1aC05LjMyNXoiLz48L2NsaXBQYXRoPjxjbGlwUGF0aCBpZD0iayI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTkuMzI1IDc5Ljk2M0gxMDB2MzUuNjU2SDkuMzI1eiIvPjwvY2xpcFBhdGg+PGNsaXBQYXRoIGlkPSJsIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMTAwIDc4LjQ2Nmg5MC42NzV2MzguNjVIMTAweiIvPjwvY2xpcFBhdGg+PGNsaXBQYXRoIGlkPSJtIj48cmVjdCB3aWR0aD0iODYuMDEyIiBoZWlnaHQ9IjQuNjYzIiB4PSIxMDQuNjYzIiB5PSI5NS40NTkiIGZpbGw9IiNmZmYiIHJ4PSIyLjMzMSIvPjwvY2xpcFBhdGg+PGNsaXBQYXRoIGlkPSJuIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNOS4zMjUgMTE5LjE5NkgxMDB2MzUuNjU2SDkuMzI1eiIvPjwvY2xpcFBhdGg+PGNsaXBQYXRoIGlkPSJvIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMTAwIDExNy42OTloOTAuNjc1djM4LjY1SDEwMHoiLz48L2NsaXBQYXRoPjxjbGlwUGF0aCBpZD0icCI+PHJlY3Qgd2lkdGg9Ijg2LjAxMiIgaGVpZ2h0PSI0LjY2MyIgeD0iMTA0LjY2MyIgeT0iMTM0LjY5MiIgZmlsbD0iI2ZmZiIgcng9IjIuMzMxIi8+PC9jbGlwUGF0aD48Y2xpcFBhdGggaWQ9InEiPjxwYXRoIGZpbGw9IiNmZmYiIGQ9Ik0xODEuMzUgMTQyLjAyNGg5LjMyNXY5LjMyNWgtOS4zMjV6Ii8+PC9jbGlwUGF0aD48ZmlsdGVyIGlkPSJiIiB3aWR0aD0iMjA5LjMyNSIgaGVpZ2h0PSIxNjkuMzI1IiB4PSItNC42NjMiIHk9Ii0yLjMzMSIgY29sb3ItaW50ZXJwb2xhdGlvbi1maWx0ZXJzPSJzUkdCIiBmaWx0ZXJVbml0cz0idXNlclNwYWNlT25Vc2UiPjxmZUZsb29kIGZsb29kLW9wYWNpdHk9IjAiIHJlc3VsdD0iQmFja2dyb3VuZEltYWdlRml4Ii8+PGZlQ29sb3JNYXRyaXggaW49IlNvdXJjZUFscGhhIiByZXN1bHQ9ImhhcmRBbHBoYSIgdmFsdWVzPSIwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAxMjcgMCIvPjxmZU9mZnNldCBkeT0iMi4zMzEiLz48ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPSIyLjMzMSIvPjxmZUNvbXBvc2l0ZSBpbjI9ImhhcmRBbHBoYSIgb3BlcmF0b3I9Im91dCIvPjxmZUNvbG9yTWF0cml4IHZhbHVlcz0iMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMC4wOCAwIi8+PGZlQmxlbmQgaW4yPSJCYWNrZ3JvdW5kSW1hZ2VGaXgiIHJlc3VsdD0iZWZmZWN0MV9kcm9wU2hhZG93Xzg0NDVfMTg5ODg0Ii8+PGZlQ29sb3JNYXRyaXggaW49IlNvdXJjZUFscGhhIiByZXN1bHQ9ImhhcmRBbHBoYSIgdmFsdWVzPSIwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAxMjcgMCIvPjxmZU9mZnNldCBkeT0iLjU4MyIvPjxmZUdhdXNzaWFuQmx1ciBzdGREZXZpYXRpb249IjEuMTY2Ii8+PGZlQ29tcG9zaXRlIGluMj0iaGFyZEFscGhhIiBvcGVyYXRvcj0ib3V0Ii8+PGZlQ29sb3JNYXRyaXggdmFsdWVzPSIwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwLjA4IDAiLz48ZmVCbGVuZCBpbjI9ImVmZmVjdDFfZHJvcFNoYWRvd184NDQ1XzE4OTg4NCIgcmVzdWx0PSJlZmZlY3QyX2Ryb3BTaGFkb3dfODQ0NV8xODk4ODQiLz48ZmVCbGVuZCBpbj0iU291cmNlR3JhcGhpYyIgaW4yPSJlZmZlY3QyX2Ryb3BTaGFkb3dfODQ0NV8xODk4ODQiIHJlc3VsdD0ic2hhcGUiLz48L2ZpbHRlcj48L2RlZnM+PC9zdmc+", + "public": true + } + ], + "scada": false, + "tags": null +} \ No newline at end of file diff --git a/ui-ngx/src/app/modules/home/components/widget/lib/cards/api-usage-widget.component.html b/ui-ngx/src/app/modules/home/components/widget/lib/cards/api-usage-widget.component.html new file mode 100644 index 0000000000..7c32651f16 --- /dev/null +++ b/ui-ngx/src/app/modules/home/components/widget/lib/cards/api-usage-widget.component.html @@ -0,0 +1,54 @@ + +
+
+ +
+
+ @for (api of apiUsages; track api){ +
+
+
{{ api.label }}
+
+
{{ api.current.value }} / {{ api.maxLimit.value }}
+
+ +
+
+
{{ ('api-usage.status.' + api.status.value) | translate }}
+
+ @if (api.status.value === 'enabled') { + check_circle + } @else { + warning + } +
+
+
+
+ +
+ } +
+
+
diff --git a/ui-ngx/src/app/modules/home/components/widget/lib/cards/api-usage-widget.component.scss b/ui-ngx/src/app/modules/home/components/widget/lib/cards/api-usage-widget.component.scss new file mode 100644 index 0000000000..a4ec35ee26 --- /dev/null +++ b/ui-ngx/src/app/modules/home/components/widget/lib/cards/api-usage-widget.component.scss @@ -0,0 +1,124 @@ +/** + * Copyright © 2016-2025 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +@import "../../../../../../../scss/constants"; + +$enabled-color: #198038; +$disabled-color: #D12730; +$warning-color: #FAA405; + +.tb-no-notification-svg-color { + color: $tb-primary-color; +} + +.tb-api-usage-panel { + > div:not(.tb-api-usage-overlay) { + z-index: 1; + } + .tb-api-usage-overlay { + position: absolute; + top: 12px; + left: 12px; + bottom: 12px; + right: 12px; + } + .tb-api-usage-content { + height: 100%; + min-height: 0; + display: flex; + flex-direction: column; + align-items: center; + .api-items-list { + display: flex; + flex-direction: column; + width: 100%; + .api-item { + &.enabled { + .api-item-statistic-status { + color: $enabled-color; + } + .mat-mdc-progress-bar { + --mdc-linear-progress-active-indicator-color: #{$enabled-color}; + } + } + &.disabled { + .api-item-statistic-status { + color: $disabled-color; + } + .mat-mdc-progress-bar { + --mdc-linear-progress-active-indicator-color: #{$disabled-color}; + } + } + &.warning { + .api-item-statistic-status { + color: $warning-color; + } + .mat-mdc-progress-bar { + --mdc-linear-progress-active-indicator-color: #{$warning-color}; + } + } + + &:hover { + background-color: rgba(0, 0, 0, 0.06); + } + &.active { + background-color: rgba($tb-primary-color, 0.06); + .mat-divider { + --mat-divider-color: #{$tb-primary-color}; + } + } + + .api-item-content { + display: flex; + flex-direction: row; + align-items: center; + justify-content: space-between; + padding: 5px 16px; + .api-item-title { + display: flex; + flex: 1; + font-size: 14px; + font-weight: 500; + color: $tb-primary-color; + } + .api-item-statistic { + display: flex; + flex: 1; + flex-direction: column; + &-count { + font-size: 14px; + color: rgba(0, 0, 0, 0.54); + } + &-status { + display: flex; + flex-direction: row; + justify-content: space-between; + align-items: center; + font-size: 14px; + } + &-progress { + --mdc-linear-progress-track-height: 8px; + --mdc-linear-progress-active-indicator-height: 8px; + padding: 4px 0; + .mat-mdc-progress-bar { + border-radius: 6px; + } + } + } + } + } + } + } +} diff --git a/ui-ngx/src/app/modules/home/components/widget/lib/cards/api-usage-widget.component.ts b/ui-ngx/src/app/modules/home/components/widget/lib/cards/api-usage-widget.component.ts new file mode 100644 index 0000000000..0183c6e1f2 --- /dev/null +++ b/ui-ngx/src/app/modules/home/components/widget/lib/cards/api-usage-widget.component.ts @@ -0,0 +1,178 @@ +/// +/// Copyright © 2016-2025 The Thingsboard Authors +/// +/// Licensed under the Apache License, Version 2.0 (the "License"); +/// you may not use this file except in compliance with the License. +/// You may obtain a copy of the License at +/// +/// http://www.apache.org/licenses/LICENSE-2.0 +/// +/// Unless required by applicable law or agreed to in writing, software +/// distributed under the License is distributed on an "AS IS" BASIS, +/// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +/// See the License for the specific language governing permissions and +/// limitations under the License. +/// + +import { ChangeDetectorRef, Component, Input, OnDestroy, OnInit, TemplateRef, ViewEncapsulation } from '@angular/core'; +import { WidgetContext } from '@home/models/widget-component.models'; +import { backgroundStyle, ComponentStyle, overlayStyle } from '@shared/models/widget-settings.models'; +import { Observable } from 'rxjs'; +import { ImagePipe } from '@shared/pipe/image.pipe'; +import { DomSanitizer } from '@angular/platform-browser'; +import { DataKey, DatasourceType, widgetType } from "@shared/models/widget.models"; +import { WidgetSubscriptionOptions } from "@core/api/widget-api.models"; +import { formattedDataFormDatasourceData } from "@core/utils"; + +import { UtilsService } from "@core/services/utils.service"; +import { + ApiUsageDataKeysSettings, + apiUsageDefaultSettings, + ApiUsageWidgetSettings +} from "@home/components/widget/lib/settings/cards/api-usage-settings.component.models"; + +@Component({ + selector: 'tb-api-usage-widget', + templateUrl: './api-usage-widget.component.html', + styleUrls: ['api-usage-widget.component.scss'], + encapsulation: ViewEncapsulation.None +}) +export class ApiUsageWidgetComponent implements OnInit, OnDestroy { + + settings: ApiUsageWidgetSettings; + + @Input() + ctx: WidgetContext; + + @Input() + widgetTitlePanel: TemplateRef; + + backgroundStyle$: Observable; + overlayStyle: ComponentStyle = {}; + padding: string; + + apiUsages = []; + currentState = ''; + noDataDisplayMessageText: string; + + private contentResize$: ResizeObserver; + private powers: {key: string, value: number}[] = [ + { key: 'Q', value: 1e15 }, + { key: 'T', value: 1e12 }, + { key: 'B', value: 1e9 }, + { key: 'M', value: 1e6 }, + { key: 'K', value: 1e3 } + ]; + + constructor(private imagePipe: ImagePipe, + private utils: UtilsService, + private sanitizer: DomSanitizer, + private cd: ChangeDetectorRef) { + } + + ngOnInit(): void { + this.ctx.$scope.apiUsageWidget = this; + this.settings = {...apiUsageDefaultSettings, ...this.ctx.settings}; + + this.parseApiUsages(); + + const ds = { + type: DatasourceType.entity, + name: '', + entityAliasId: this.settings.dsEntityAliasId, + dataKeys: this.getUniqueDataKeys(this.settings.dataKeys) + } + + const apiUsageSubscriptionOptions: WidgetSubscriptionOptions = { + datasources: [ds], + useDashboardTimewindow: false, + type: widgetType.latest, + callbacks: { + onDataUpdated: (subscription) => { + const data = formattedDataFormDatasourceData(subscription.data); + this.apiUsages.forEach(key => { + const progress = data[0][key.maxLimit.key] !== 0 ? Math.min(100, ((data[0][key.current.key] / data[0][key.maxLimit.key]) * 100)) : 0; + key.progress = isFinite(progress) ? progress : 0; + key.status.value = data[0][key.status.key] ? data[0][key.status.key].toLowerCase() : 'enabled'; + key.maxLimit.value = isFinite(data[0][key.maxLimit.key]) && data[0][key.maxLimit.key] !== 0 ? this.toShortNumber(data[0][key.maxLimit.key]) : '∞'; + key.current.value = isFinite(data[0][key.current.key]) ? this.toShortNumber(data[0][key.current.key]) : 0; + }); + this.cd.detectChanges(); + } + } + }; + this.ctx.subscriptionApi.createSubscription(apiUsageSubscriptionOptions, true).subscribe(); + + this.currentState = this.ctx.stateController.getStateId(); + this.ctx.stateController.stateId().subscribe((state) => { + // @ts-ignore + this.ctx.dashboardWidget.updateCustomHeaderActions(); + this.currentState = state; + this.cd.markForCheck(); + }); + this.backgroundStyle$ = backgroundStyle(this.settings.background, this.imagePipe, this.sanitizer); + this.overlayStyle = overlayStyle(this.settings.background.overlay); + this.padding = this.settings.background.overlay.enabled ? undefined : this.settings.padding; + } + + updateState($event: MouseEvent, stateName: string) { + $event?.preventDefault(); + if (stateName?.length) { + this.ctx.stateController.updateState(stateName, this.ctx.stateController.getStateParams(), this.ctx.isMobile); + } + } + + parseApiUsages() { + this.settings.dataKeys.forEach((key) => { + this.apiUsages.push({ + label: this.utils.customTranslation(key.label, key.label), + state: key.state, + progress: 0, + status: {key: key.status.name, value: 'enabled'}, + maxLimit: {key: key.maxLimit.name, value: '∞'}, + current: {key: key.current.name, value: 0}, + }); + }) + } + + getUniqueDataKeys(data: ApiUsageDataKeysSettings[]): DataKey[] { + const seenNames = new Set(); + return data + .flatMap(item => [item.status, item.maxLimit, item.current]) + .filter(key => { + if (seenNames.has(key.name)) { + return false; + } + seenNames.add(key.name); + return true; + }); + }; + + + ngOnDestroy() { + if (this.contentResize$) { + this.contentResize$.disconnect(); + } + } + + private toShortNumber(number: any, decimals = 1) { + if (!Number.isFinite(number) || number < 0) { + return '0'; + } + for (const power of this.powers) { + if (number >= power.value) { + const reduced = number / power.value; + const rounded = Number(reduced.toFixed(decimals)); + return `${rounded}${power.key}`; + } + } + return `${Number(number.toFixed(decimals))}`; + } + + public onInit() { + const borderRadius = this.ctx.$widgetElement.css('borderRadius'); + this.overlayStyle = {...this.overlayStyle, ...{borderRadius}}; + this.cd.detectChanges(); + } + +} diff --git a/ui-ngx/src/app/modules/home/components/widget/lib/settings/cards/api-usage-data-key-row.component.html b/ui-ngx/src/app/modules/home/components/widget/lib/settings/cards/api-usage-data-key-row.component.html new file mode 100644 index 0000000000..d8e908acce --- /dev/null +++ b/ui-ngx/src/app/modules/home/components/widget/lib/settings/cards/api-usage-data-key-row.component.html @@ -0,0 +1,82 @@ + +
+
+ + + + + + +
+ + + + + + +
+
+ +
+
+
diff --git a/ui-ngx/src/app/modules/home/components/widget/lib/settings/cards/api-usage-data-key-row.component.scss b/ui-ngx/src/app/modules/home/components/widget/lib/settings/cards/api-usage-data-key-row.component.scss new file mode 100644 index 0000000000..f54357b60f --- /dev/null +++ b/ui-ngx/src/app/modules/home/components/widget/lib/settings/cards/api-usage-data-key-row.component.scss @@ -0,0 +1,58 @@ +/** + * Copyright © 2016-2025 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +@import '../../../../../../../../scss/constants'; + +.tb-form-table-row.tb-api-usage-data-key-row { + + .tb-source-field { + flex: 1 1 50%; + display: flex; + gap: 12px; + .tb-label-field { + flex: 1; + } + } + + .tb-data-key-field { + flex: 1 1 25%; + min-width: 0; + } + + .tb-remove-button { + width: 40px; + min-width: 40px; + } + + @media #{$mat-lt-lg} { + .tb-source-field { + flex-direction: column; + flex: 1 1 30%; + } + .tb-data-key-field{ + flex: 1 1 35%; + } + } + @media screen and (min-width: 450px) and (max-width: 599px) { + .tb-source-field { + flex-direction: row; + } + } + @media #{$mat-xs} { + .tb-data-key-field { + display: none; + } + } +} diff --git a/ui-ngx/src/app/modules/home/components/widget/lib/settings/cards/api-usage-data-key-row.component.ts b/ui-ngx/src/app/modules/home/components/widget/lib/settings/cards/api-usage-data-key-row.component.ts new file mode 100644 index 0000000000..adbf7ad180 --- /dev/null +++ b/ui-ngx/src/app/modules/home/components/widget/lib/settings/cards/api-usage-data-key-row.component.ts @@ -0,0 +1,151 @@ +/// +/// Copyright © 2016-2025 The Thingsboard Authors +/// +/// Licensed under the Apache License, Version 2.0 (the "License"); +/// you may not use this file except in compliance with the License. +/// You may obtain a copy of the License at +/// +/// http://www.apache.org/licenses/LICENSE-2.0 +/// +/// Unless required by applicable law or agreed to in writing, software +/// distributed under the License is distributed on an "AS IS" BASIS, +/// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +/// See the License for the specific language governing permissions and +/// limitations under the License. +/// + +import { + ChangeDetectorRef, + Component, + DestroyRef, + EventEmitter, + forwardRef, + Input, + OnInit, + Output, + ViewEncapsulation +} from '@angular/core'; +import { + ControlValueAccessor, + NG_VALUE_ACCESSOR, + UntypedFormBuilder, + UntypedFormGroup, + Validators +} from '@angular/forms'; +import { takeUntilDestroyed } from '@angular/core/rxjs-interop'; +import { DataKey, DatasourceType, widgetType } from '@shared/models/widget.models'; +import { DataKeyType } from '@shared/models/telemetry/telemetry.models'; +import { + ApiUsageDataKeysSettings, + ApiUsageSettingsContext +} from "@home/components/widget/lib/settings/cards/api-usage-settings.component.models"; + +@Component({ + selector: 'tb-api-usage-data-key-row', + templateUrl: './api-usage-data-key-row.component.html', + styleUrls: ['./api-usage-data-key-row.component.scss'], + providers: [ + { + provide: NG_VALUE_ACCESSOR, + useExisting: forwardRef(() => ApiUsageDataKeyRowComponent), + multi: true + } + ], + encapsulation: ViewEncapsulation.None +}) +export class ApiUsageDataKeyRowComponent implements ControlValueAccessor, OnInit { + + DatasourceType = DatasourceType; + DataKeyType = DataKeyType; + + widgetType = widgetType; + + @Input() + disabled: boolean; + + @Input() + dsEntityAliasId: string; + + @Input() + context: ApiUsageSettingsContext; + + @Output() + dataKeyRemoved = new EventEmitter(); + + dataKeyFormGroup: UntypedFormGroup; + + modelValue: ApiUsageDataKeysSettings; + + private propagateChange = (_val: any) => {}; + + constructor(private fb: UntypedFormBuilder, + private cd: ChangeDetectorRef, + private destroyRef: DestroyRef) { + } + + ngOnInit() { + this.dataKeyFormGroup = this.fb.group({ + label: [null, [Validators.required]], + state: [null, []], + status: [null, [Validators.required]], + maxLimit: [null, [Validators.required]], + current: [null, [Validators.required]] + }); + this.dataKeyFormGroup.valueChanges.pipe( + takeUntilDestroyed(this.destroyRef) + ).subscribe( + () => this.updateModel() + ); + } + + registerOnChange(fn: any): void { + this.propagateChange = fn; + } + + registerOnTouched(_fn: any): void { + } + + setDisabledState(isDisabled: boolean): void { + this.disabled = isDisabled; + if (isDisabled) { + this.dataKeyFormGroup.disable({emitEvent: false}); + } else { + this.dataKeyFormGroup.enable({emitEvent: false}); + this.updateValidators(); + } + } + + writeValue(value: ApiUsageDataKeysSettings): void { + this.modelValue = value; + this.dataKeyFormGroup.patchValue( + { + label: value?.label, + state: value?.state, + status: value?.status, + maxLimit: value?.maxLimit, + current: value?.current + }, {emitEvent: false} + ); + this.updateValidators(); + this.cd.markForCheck(); + } + + editKey(keyType: 'status' | 'maxLimit' | 'current') { + const targetDataKey: DataKey = this.dataKeyFormGroup.get(keyType).value; + this.context.editKey(targetDataKey, this.dsEntityAliasId).subscribe( + (updatedDataKey) => { + if (updatedDataKey) { + this.dataKeyFormGroup.get(keyType).patchValue(updatedDataKey); + } + } + ); + } + + private updateValidators() { + } + + private updateModel() { + this.modelValue = {...this.modelValue, ...this.dataKeyFormGroup.value}; + this.propagateChange(this.modelValue); + } +} diff --git a/ui-ngx/src/app/modules/home/components/widget/lib/settings/cards/api-usage-settings.component.models.ts b/ui-ngx/src/app/modules/home/components/widget/lib/settings/cards/api-usage-settings.component.models.ts new file mode 100644 index 0000000000..7af2711e8f --- /dev/null +++ b/ui-ngx/src/app/modules/home/components/widget/lib/settings/cards/api-usage-settings.component.models.ts @@ -0,0 +1,106 @@ +/// +/// Copyright © 2016-2025 The Thingsboard Authors +/// +/// Licensed under the Apache License, Version 2.0 (the "License"); +/// you may not use this file except in compliance with the License. +/// You may obtain a copy of the License at +/// +/// http://www.apache.org/licenses/LICENSE-2.0 +/// +/// Unless required by applicable law or agreed to in writing, software +/// distributed under the License is distributed on an "AS IS" BASIS, +/// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +/// See the License for the specific language governing permissions and +/// limitations under the License. +/// + +import { IAliasController } from '@core/api/widget-api.models'; +import { WidgetConfigCallbacks } from '@home/components/widget/config/widget-config.component.models'; +import { DataKey, Widget, widgetType } from '@shared/models/widget.models'; +import { Observable } from "rxjs"; +import { BackgroundSettings, BackgroundType } from "@shared/models/widget-settings.models"; +import { DataKeyType } from "@shared/models/telemetry/telemetry.models"; +import { materialColors } from "@shared/models/material.models"; + +export interface ApiUsageSettingsContext { + aliasController: IAliasController; + callbacks: WidgetConfigCallbacks; + widget: Widget; + editKey: (key: DataKey, entityAliasId: string, WidgetType?: widgetType) => Observable; + generateDataKey: (key: DataKey) => DataKey; +} + + +export interface ApiUsageWidgetSettings { + dsEntityAliasId: string; + dataKeys: ApiUsageDataKeysSettings[]; + targetDashboardState: string; + background: BackgroundSettings; + padding: string; +} + +export interface ApiUsageDataKeysSettings { + label: string; + state: string; + status: DataKey; + maxLimit: DataKey; + current: DataKey; +} + +const generateDataKey = (label: string, status: string, maxLimit: string, current: string) => { + return { + label, + state: '', + status: { + name: status, + label: status, + type: DataKeyType.timeseries, + funcBody: undefined, + settings: {}, + color: materialColors[0].value + }, + maxLimit: { + name: maxLimit, + label: maxLimit, + type: DataKeyType.timeseries, + funcBody: undefined, + settings: {}, + color: materialColors[0].value + }, + current: { + name: current, + label: current, + type: DataKeyType.timeseries, + funcBody: undefined, + settings: {}, + color: materialColors[0].value + } + } +} + +export const apiUsageDefaultSettings: ApiUsageWidgetSettings = { + dsEntityAliasId: '', + dataKeys: [ + generateDataKey('{i18n:api-usage.transport-messages}', 'transportApiState', 'transportMsgLimit', 'transportMsgCount'), + generateDataKey('{i18n:api-usage.transport-data-points}', 'transportApiState', 'transportDataPointsLimit', 'transportDataPointsCount'), + generateDataKey('{i18n:api-usage.rule-engine-executions}', 'ruleEngineApiState', 'ruleEngineExecutionLimit', 'ruleEngineExecutionCount'), + generateDataKey('{i18n:api-usage.javascript-function-executions}', 'jsExecutionApiState', 'jsExecutionLimit', 'jsExecutionCount'), + generateDataKey('{i18n:api-usage.tbel-function-executions}', 'tbelExecutionApiState', 'tbelExecutionLimit', 'tbelExecutionCount'), + generateDataKey('{i18n:api-usage.data-points-storage-days}', 'dbApiState', 'storageDataPointsLimit', 'storageDataPointsCount'), + generateDataKey('{i18n:api-usage.alarms-created}', 'alarmApiState', 'createdAlarmsLimit', 'createdAlarmsCount'), + generateDataKey('{i18n:api-usage.emails}', 'emailApiState', 'emailLimit', 'emailCount'), + generateDataKey('{i18n:api-usage.sms}', 'notificationApiState', 'smsLimit', 'smsCount'), + ], + targetDashboardState: 'default', + background: { + type: BackgroundType.color, + color: '#fff', + overlay: { + enabled: false, + color: 'rgba(255,255,255,0.72)', + blur: 3 + } + }, + padding: '0' +}; + diff --git a/ui-ngx/src/app/modules/home/components/widget/lib/settings/cards/api-usage-widget-settings.component.html b/ui-ngx/src/app/modules/home/components/widget/lib/settings/cards/api-usage-widget-settings.component.html new file mode 100644 index 0000000000..babb9e4da2 --- /dev/null +++ b/ui-ngx/src/app/modules/home/components/widget/lib/settings/cards/api-usage-widget-settings.component.html @@ -0,0 +1,96 @@ + + +
+
widget-config.datasource
+ + + +
+
+
+
widgets.api-usage.label
+
widgets.api-usage.state-name
+
widgets.api-usage.status
+
widgets.api-usage.limit
+
widgets.api-usage.current-number
+
+
+
+
+
+ + +
+ +
+
+
+
+
+
+ +
+
+ + {{ 'widgets.api-usage.no-key' | translate }} + + + + widgets.api-usage.target-dashboard-state + + +
+ +
+
widget-config.card-appearance
+
+
{{ 'widgets.background.background' | translate }}
+ + +
+
+
{{ 'widget-config.card-padding' | translate }}
+ + + +
+
+
diff --git a/ui-ngx/src/app/modules/home/components/widget/lib/settings/cards/api-usage-widget-settings.component.scss b/ui-ngx/src/app/modules/home/components/widget/lib/settings/cards/api-usage-widget-settings.component.scss new file mode 100644 index 0000000000..9543abb44b --- /dev/null +++ b/ui-ngx/src/app/modules/home/components/widget/lib/settings/cards/api-usage-widget-settings.component.scss @@ -0,0 +1,62 @@ +/** + * Copyright © 2016-2025 The Thingsboard Authors + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +@import '../../../../../../../../scss/constants'; + +.tb-map-data-layers { + .tb-form-table-header-cell { + &.tb-source-header { + flex: 1 1 50%; + } + &.tb-x-pos-header { + flex: 1 1 25%; + } + &.tb-y-pos-header { + flex: 1 1 25%; + } + &.tb-key-header { + flex: 1 1 50%; + } + &.tb-actions-header { + width: 80px; + min-width: 80px; + } + @media #{$mat-lt-lg} { + &.tb-source-header { + flex: 1 1 30%; + } + &.tb-x-pos-header, &.tb-y-pos-header { + flex: 1 1 35%; + } + &.tb-key-header { + flex: 1 1 70%; + } + } + @media #{$mat-xs} { + &.tb-x-pos-header, &.tb-y-pos-header { + display: none; + } + &.tb-key-header { + display: none; + } + } + } + + .tb-form-table-body { + tb-api-usage-data-key-row { + overflow: hidden; + } + } +} diff --git a/ui-ngx/src/app/modules/home/components/widget/lib/settings/cards/api-usage-widget-settings.component.ts b/ui-ngx/src/app/modules/home/components/widget/lib/settings/cards/api-usage-widget-settings.component.ts new file mode 100644 index 0000000000..b71b406bfa --- /dev/null +++ b/ui-ngx/src/app/modules/home/components/widget/lib/settings/cards/api-usage-widget-settings.component.ts @@ -0,0 +1,193 @@ +/// +/// Copyright © 2016-2025 The Thingsboard Authors +/// +/// Licensed under the Apache License, Version 2.0 (the "License"); +/// you may not use this file except in compliance with the License. +/// You may obtain a copy of the License at +/// +/// http://www.apache.org/licenses/LICENSE-2.0 +/// +/// Unless required by applicable law or agreed to in writing, software +/// distributed under the License is distributed on an "AS IS" BASIS, +/// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +/// See the License for the specific language governing permissions and +/// limitations under the License. +/// + +import { Component, forwardRef } from '@angular/core'; +import { + DataKey, + DataKeyConfigMode, + WidgetSettings, + WidgetSettingsComponent, + widgetType +} from '@shared/models/widget.models'; +import { + AbstractControl, + NG_VALUE_ACCESSOR, + UntypedFormArray, + UntypedFormBuilder, + UntypedFormGroup, + ValidationErrors, + ValidatorFn +} from '@angular/forms'; +import { Store } from '@ngrx/store'; +import { AppState } from '@core/core.state'; +import { + ApiUsageDataKeysSettings, + apiUsageDefaultSettings, + ApiUsageSettingsContext +} from "@home/components/widget/lib/settings/cards/api-usage-settings.component.models"; +import { deepClone } from "@core/utils"; +import { Observable } from "rxjs"; +import { + DataKeyConfigDialogComponent, + DataKeyConfigDialogData +} from "@home/components/widget/lib/settings/common/key/data-key-config-dialog.component"; +import { MatDialog } from "@angular/material/dialog"; +import { CdkDragDrop } from "@angular/cdk/drag-drop"; + +@Component({ + selector: 'tb-api-usage-widget-settings', + templateUrl: './api-usage-widget-settings.component.html', + styleUrls: ['./../widget-settings.scss', 'api-usage-widget-settings.component.scss'], + providers: [ + { + provide: NG_VALUE_ACCESSOR, + useExisting: forwardRef(() => ApiUsageWidgetSettingsComponent), + multi: true + } + ], +}) +export class ApiUsageWidgetSettingsComponent extends WidgetSettingsComponent { + + apiUsageWidgetSettingsForm: UntypedFormGroup; + + context: ApiUsageSettingsContext; + + constructor(protected store: Store, + private dialog: MatDialog, + private fb: UntypedFormBuilder) { + super(store); + } + + ngOnInit() { + this.context = { + aliasController: this.aliasController, + callbacks: this.callbacks, + widget: this.widget, + editKey: this.editKey.bind(this), + generateDataKey: this.generateDataKey.bind(this) + }; + } + + dataKeysFormArray(): UntypedFormArray { + return this.apiUsageWidgetSettingsForm.get('dataKeys') as UntypedFormArray; + } + + trackByDataKey(index: number, dataKeyControl: AbstractControl): any { + return dataKeyControl; + } + + get dragEnabled(): boolean { + return this.dataKeysFormArray().controls.length > 1; + } + + layerDrop(event: CdkDragDrop) { + const layer = this.dataKeysFormArray().at(event.previousIndex); + this.dataKeysFormArray().removeAt(event.previousIndex); + this.dataKeysFormArray().insert(event.currentIndex, layer); + } + + removeDataKey(index: number) { + (this.apiUsageWidgetSettingsForm.get('dataKeys') as UntypedFormArray).removeAt(index); + } + + addDataKey() { + const dataKey = { + label: '', + state: '', + status: null, + maxLimit: null, + current: null + }; + const dataKeysArray = this.apiUsageWidgetSettingsForm.get('dataKeys') as UntypedFormArray; + const dataKeyControl = this.fb.control(dataKey, [this.mapDataKeyValidator()]); + dataKeysArray.push(dataKeyControl); + } + + protected settingsForm(): UntypedFormGroup { + return this.apiUsageWidgetSettingsForm; + } + + protected defaultSettings(): WidgetSettings { + return apiUsageDefaultSettings; + } + + protected onSettingsSet(settings: WidgetSettings) { + this.apiUsageWidgetSettingsForm = this.fb.group({ + dsEntityAliasId: [settings?.dsEntityAliasId], + dataKeys: this.prepareDataKeysFormArray(settings?.dataKeys), + targetDashboardState: [settings?.targetDashboardState], + background: [settings?.background, []], + padding: [settings.padding, []] + }); + } + + private prepareDataKeysFormArray(dataKeys: ApiUsageDataKeysSettings[]): UntypedFormArray { + const dataKeysControls: Array = []; + if (dataKeys) { + dataKeys.forEach((dataLayer) => { + dataKeysControls.push(this.fb.control(dataLayer, [this.mapDataKeyValidator()])); + }); + } + return this.fb.array(dataKeysControls); + } + + protected validatorTriggers(): string[] { + return []; + } + + protected updateValidators() { + } + + mapDataKeyValidator = (): ValidatorFn => { + return (control: AbstractControl): ValidationErrors | null => { + const value: ApiUsageDataKeysSettings = control.value; + if (!value?.label || !value?.current || !value?.maxLimit || !value?.status) { + return { + dataKey: true + } + } + return null; + }; + }; + + private editKey(key: DataKey, entityAliasId: string, _widgetType = widgetType.latest): Observable { + return this.dialog.open(DataKeyConfigDialogComponent, + { + disableClose: true, + panelClass: ['tb-dialog', 'tb-fullscreen-dialog'], + data: { + dataKey: deepClone(key), + dataKeyConfigMode: DataKeyConfigMode.general, + aliasController: this.aliasController, + widgetType: _widgetType, + entityAliasId, + showPostProcessing: true, + callbacks: this.callbacks, + hideDataKeyColor: true, + hideDataKeyDecimals: true, + hideDataKeyUnits: true, + widget: this.widget, + dashboard: null, + dataKeySettingsForm: null, + dataKeySettingsDirective: null + } + }).afterClosed(); + } + + private generateDataKey(key: DataKey): DataKey { + return this.callbacks.generateDataKey(key.name, key.type, null, false, null); + } +} diff --git a/ui-ngx/src/app/modules/home/components/widget/lib/settings/widget-settings.module.ts b/ui-ngx/src/app/modules/home/components/widget/lib/settings/widget-settings.module.ts index fbf9b2eec2..9e4de41841 100644 --- a/ui-ngx/src/app/modules/home/components/widget/lib/settings/widget-settings.module.ts +++ b/ui-ngx/src/app/modules/home/components/widget/lib/settings/widget-settings.module.ts @@ -375,6 +375,12 @@ import { ValueStepperWidgetSettingsComponent } from '@home/components/widget/lib/settings/control/value-stepper-widget-settings.component'; import { MapWidgetSettingsComponent } from '@home/components/widget/lib/settings/map/map-widget-settings.component'; +import { + ApiUsageWidgetSettingsComponent +} from "@home/components/widget/lib/settings/cards/api-usage-widget-settings.component"; +import { + ApiUsageDataKeyRowComponent +} from "@home/components/widget/lib/settings/cards/api-usage-data-key-row.component"; @NgModule({ declarations: [ @@ -508,7 +514,9 @@ import { MapWidgetSettingsComponent } from '@home/components/widget/lib/settings LabelValueCardWidgetSettingsComponent, UnreadNotificationWidgetSettingsComponent, ScadaSymbolWidgetSettingsComponent, - MapWidgetSettingsComponent + MapWidgetSettingsComponent, + ApiUsageWidgetSettingsComponent, + ApiUsageDataKeyRowComponent ], imports: [ CommonModule, @@ -647,7 +655,8 @@ import { MapWidgetSettingsComponent } from '@home/components/widget/lib/settings LabelValueCardWidgetSettingsComponent, UnreadNotificationWidgetSettingsComponent, ScadaSymbolWidgetSettingsComponent, - MapWidgetSettingsComponent + MapWidgetSettingsComponent, + ApiUsageWidgetSettingsComponent ] }) export class WidgetSettingsModule { diff --git a/ui-ngx/src/app/modules/home/components/widget/widget-components.module.ts b/ui-ngx/src/app/modules/home/components/widget/widget-components.module.ts index cdc829a96f..fab51613d4 100644 --- a/ui-ngx/src/app/modules/home/components/widget/widget-components.module.ts +++ b/ui-ngx/src/app/modules/home/components/widget/widget-components.module.ts @@ -94,6 +94,7 @@ import { SelectMapEntityPanelComponent } from '@home/components/widget/lib/maps/panels/select-map-entity-panel.component'; import { MapTimelinePanelComponent } from '@home/components/widget/lib/maps/panels/map-timeline-panel.component'; +import { ApiUsageWidgetComponent } from "@home/components/widget/lib/cards/api-usage-widget.component"; @NgModule({ declarations: [ @@ -151,7 +152,8 @@ import { MapTimelinePanelComponent } from '@home/components/widget/lib/maps/pane ScadaSymbolWidgetComponent, SelectMapEntityPanelComponent, MapTimelinePanelComponent, - MapWidgetComponent + MapWidgetComponent, + ApiUsageWidgetComponent ], imports: [ CommonModule, @@ -214,7 +216,8 @@ import { MapTimelinePanelComponent } from '@home/components/widget/lib/maps/pane UnreadNotificationWidgetComponent, NotificationTypeFilterPanelComponent, ScadaSymbolWidgetComponent, - MapWidgetComponent + MapWidgetComponent, + ApiUsageWidgetComponent ], providers: [ {provide: WIDGET_COMPONENTS_MODULE_TOKEN, useValue: WidgetComponentsModule}, diff --git a/ui-ngx/src/assets/dashboard/api_usage.json b/ui-ngx/src/assets/dashboard/api_usage.json index 9738e9ac0f..77dc18c11e 100644 --- a/ui-ngx/src/assets/dashboard/api_usage.json +++ b/ui-ngx/src/assets/dashboard/api_usage.json @@ -79,7 +79,6 @@ } ], "timewindow": { - "hideInterval": false, "hideAggregation": false, "hideAggInterval": false, "selectedTab": 0, @@ -121,7363 +120,12 @@ "widgetCss": "", "pageSize": 1024, "noDataDisplayMessage": "", - "configMode": "basic" + "configMode": "basic", + "borderRadius": "4px" }, "id": "a669cf86-e715-efa4-dd9a-b839abf499e9", "typeFullFqn": "system.cards.timeseries_table" }, - "aab68ab5-8e40-8694-c55c-8eb1c89b88fb": { - "typeFullFqn": "system.cards.markdown_card", - "type": "latest", - "sizeX": 5, - "sizeY": 3.5, - "config": { - "datasources": [ - { - "type": "entity", - "name": null, - "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", - "filterId": null, - "dataKeys": [ - { - "name": "transportMsgLimit", - "type": "timeseries", - "label": "limit", - "color": "#4caf50", - "settings": {}, - "_hash": 0.5463603803546802, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return value !== '' ? parseInt(value, 10) : 0;", - "aggregationType": "NONE" - }, - { - "name": "transportMsgCount", - "type": "timeseries", - "label": "count", - "color": "#f44336", - "settings": {}, - "_hash": 0.5564241862015964, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return value !== '' ? parseInt(value, 10) : 0;\n", - "aggregationType": "NONE" - }, - { - "name": "transportDataPointsLimit", - "type": "timeseries", - "label": "pointsLimit", - "color": "#9c27b0", - "settings": {}, - "_hash": 0.22082255831864894, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return value !== '' ? parseInt(value, 10) : 0;", - "aggregationType": "NONE" - }, - { - "name": "transportDataPointsCount", - "type": "timeseries", - "label": "pointsCount", - "color": "#8bc34a", - "settings": {}, - "_hash": 0.6340356364819146, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return value !== '' ? parseInt(value, 10) : 0;", - "aggregationType": "NONE" - }, - { - "name": "transportApiState", - "type": "timeseries", - "label": "title", - "color": "#3f51b5", - "settings": {}, - "_hash": 0.6894070537030252, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return \"{i18n:api-usage.transport}\";" - }, - { - "name": "transportApiState", - "type": "timeseries", - "label": "apiStatus", - "color": "#3f51b5", - "settings": {}, - "_hash": 0.430957831457494, - "aggregationType": "NONE", - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return value ? value.toLowerCase() : 'enabled';" - }, - { - "name": "transportApiState", - "type": "timeseries", - "label": "unit", - "color": "#8bc34a", - "settings": {}, - "_hash": 0.662147926074595, - "aggregationType": "NONE", - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return '{i18n:api-usage.messages}';" - }, - { - "name": "transportApiState", - "type": "timeseries", - "label": "pointsUnit", - "color": "#3f51b5", - "settings": {}, - "_hash": 0.44620898738917947, - "aggregationType": "NONE", - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return '{i18n:api-usage.data-points}';" - } - ], - "alarmFilterConfig": { - "statusList": [ - "ACTIVE" - ] - } - } - ], - "timewindow": { - "displayValue": "", - "selectedTab": 0, - "realtime": { - "realtimeType": 1, - "interval": 1000, - "timewindowMs": 60000, - "quickInterval": "CURRENT_DAY" - }, - "history": { - "historyType": 0, - "interval": 1000, - "timewindowMs": 60000, - "fixedTimewindow": { - "startTimeMs": 1708518962586, - "endTimeMs": 1708605362586 - }, - "quickInterval": "CURRENT_DAY" - }, - "aggregation": { - "type": "AVG", - "limit": 25000 - } - }, - "showTitle": false, - "backgroundColor": "#fff", - "color": "rgba(0, 0, 0, 0.87)", - "padding": "0px", - "settings": { - "useMarkdownTextFunction": true, - "markdownTextPattern": "", - "markdownTextFunction": "function toShortNumber(number) {\n const rounder = Math.pow(10, 1);\n const powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n ];\n let key = '';\n for (const power of powers) {\n const reduced = number / power.value;\n for (const power of powers) {\n let reduced = number / power.value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n number = reduced;\n key = power.key;\n break;\n }\n }\n }\n \n return number + key;\n}\n\nfunction calculateBarValues(count, limit) {\n let apiUsageBar = '0%';\n let apiUsagePercent = '';\n let apiUsageValue = `${toShortNumber(count)} / ∞`;\n if (Number.isFinite(limit) && limit > 0) {\n var percent = Math.min(100, ((count / limit) * 100));\n apiUsageBar = `${percent}%`\n apiUsagePercent = `${percent.toFixed(2)}%`;\n apiUsageValue = `${toShortNumber(count)} / ${toShortNumber(limit)}`;\n }\n \n return [apiUsageBar, apiUsagePercent, apiUsageValue]\n}\n\nconst [apiUsageBar, apiUsagePercent, apiUsageValue] = calculateBarValues(data[0].count, data[0].limit);\nconst [apiUsageBar2, apiUsagePercent2, apiUsageValue2] = calculateBarValues(data[0].pointsCount, data[0].pointsLimit);\n\n\nreturn `
` +\n '
' +\n '
' +\n '
' +\n '
' +\n `${data[0].title}` +\n '
' +\n `
${data[0].apiStatus.toUpperCase()}
` +\n '
' +\n '
' +\n '
' +\n '
' +\n `
${data[0].unit}
` +\n '
' +\n `
` +\n '
' +\n '
' +\n `
${apiUsagePercent}
` +\n '
' +\n `
${apiUsageValue}
` +\n '
' +\n '
' +\n '
' +\n '
' +\n '
' +\n `
${data[0].pointsUnit}
` +\n '
' +\n `
` +\n '
' +\n '
' +\n `
${apiUsagePercent2}
` +\n '
' +\n `
${apiUsageValue2}
` +\n '
' +\n '
' + \n '
' +\n '
' +\n '
' +\n '
' +\n '' +\n '
'+\n '' +\n '
' +\n '
'\n", - "applyDefaultMarkdownStyle": false, - "markdownCss": "\n" - }, - "title": "Transport", - "showTitleIcon": false, - "iconColor": "rgba(0, 0, 0, 0.87)", - "iconSize": "24px", - "titleTooltip": "", - "dropShadow": true, - "enableFullscreen": false, - "widgetStyle": {}, - "titleStyle": { - "fontSize": "16px", - "fontWeight": 400 - }, - "showLegend": false, - "useDashboardTimewindow": true, - "displayTimewindow": true, - "widgetCss": "", - "pageSize": 1024, - "noDataDisplayMessage": "", - "actions": { - "elementClick": [ - { - "name": "transport_details", - "icon": "insert_chart", - "useShowWidgetActionFunction": null, - "showWidgetActionFunction": "return true;", - "type": "openDashboardState", - "targetDashboardStateId": "transport", - "setEntityId": false, - "stateEntityParamName": null, - "openRightLayout": false, - "openInSeparateDialog": false, - "openInPopover": false, - "id": "a60e09be-1bea-dfc3-6abb-f87e73256899" - } - ] - } - }, - "row": 0, - "col": 0, - "id": "aab68ab5-8e40-8694-c55c-8eb1c89b88fb" - }, - "a84fa70a-ddfa-3b24-9aa4-cf9ce91f919a": { - "typeFullFqn": "system.cards.markdown_card", - "type": "latest", - "sizeX": 5, - "sizeY": 3.5, - "config": { - "datasources": [ - { - "type": "entity", - "name": null, - "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", - "filterId": null, - "dataKeys": [ - { - "name": "ruleEngineApiState", - "type": "timeseries", - "label": "apiStatus", - "color": "#2196f3", - "settings": {}, - "_hash": 0.8830669138660703, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return value ? value : 'enabled';", - "aggregationType": "NONE" - }, - { - "name": "ruleEngineExecutionLimit", - "type": "timeseries", - "label": "limit", - "color": "#4caf50", - "settings": {}, - "_hash": 0.5463603803546802, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return value !== '' ? parseInt(value, 10) : 0;", - "aggregationType": "NONE" - }, - { - "name": "ruleEngineExecutionCount", - "type": "timeseries", - "label": "count", - "color": "#f44336", - "settings": {}, - "_hash": 0.5564241862015964, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return value !== '' ? parseInt(value, 10) : 0;", - "aggregationType": "NONE" - }, - { - "name": "ruleEngineApiState", - "type": "timeseries", - "label": "title", - "color": "#9c27b0", - "settings": {}, - "_hash": 0.3551317421302518, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return \"{i18n:api-usage.rule-engine}\";" - }, - { - "name": "ruleEngineApiState", - "type": "timeseries", - "label": "unit", - "color": "#8bc34a", - "settings": {}, - "_hash": 0.5100381746798048, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return \"{i18n:api-usage.executions}\";" - } - ], - "alarmFilterConfig": { - "statusList": [ - "ACTIVE" - ] - } - } - ], - "timewindow": { - "displayValue": "", - "selectedTab": 0, - "realtime": { - "realtimeType": 1, - "interval": 1000, - "timewindowMs": 60000, - "quickInterval": "CURRENT_DAY" - }, - "history": { - "historyType": 0, - "interval": 1000, - "timewindowMs": 60000, - "fixedTimewindow": { - "startTimeMs": 1708518962586, - "endTimeMs": 1708605362586 - }, - "quickInterval": "CURRENT_DAY" - }, - "aggregation": { - "type": "AVG", - "limit": 25000 - } - }, - "showTitle": false, - "backgroundColor": "#fff", - "color": "rgba(0, 0, 0, 0.87)", - "padding": "0px", - "settings": { - "useMarkdownTextFunction": true, - "markdownTextPattern": "", - "markdownTextFunction": "function toShortNumber(number) {\n const rounder = Math.pow(10, 1);\n const powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n ];\n let key = '';\n for (const power of powers) {\n let reduced = number / power.value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n number = reduced;\n key = power.key;\n break;\n }\n }\n \n return number + key;\n}\n\nfunction calculateBarValues(count, limit) {\n let apiUsageBar = '0%';\n let apiUsagePercent = '';\n let apiUsageValue = `${toShortNumber(count)} / ∞`;\n if (Number.isFinite(limit) && limit > 0) {\n var percent = Math.min(100, ((count / limit) * 100));\n apiUsageBar = `${percent}%`\n apiUsagePercent = `${percent.toFixed(2)}%`;\n apiUsageValue = `${toShortNumber(count)} / ${toShortNumber(limit)}`;\n }\n \n return [apiUsageBar, apiUsagePercent, apiUsageValue]\n}\n\nconst [apiUsageBar, apiUsagePercent, apiUsageValue] = calculateBarValues(data[0].count, data[0].limit);\n\n\nreturn `
` +\n '
' +\n '
' +\n '
' +\n '
${title}
' +\n `
${data[0].apiStatus.toUpperCase()}
` +\n '
' +\n '
' +\n `
${data[0].unit}
` +\n '
' +\n `
` +\n '
' +\n '
' +\n `
${apiUsagePercent}
` +\n '
' +\n `
${apiUsageValue}
` +\n '
' +\n '
' +\n '
' +\n '
' +\n '' +\n '
'+\n '' +\n '' +\n '
' +\n '
'\n", - "applyDefaultMarkdownStyle": false, - "markdownCss": "\n" - }, - "title": "Rule Engine execution", - "showTitleIcon": false, - "iconColor": "rgba(0, 0, 0, 0.87)", - "iconSize": "24px", - "titleTooltip": "", - "dropShadow": true, - "enableFullscreen": false, - "widgetStyle": {}, - "titleStyle": { - "fontSize": "16px", - "fontWeight": 400 - }, - "showLegend": false, - "useDashboardTimewindow": true, - "displayTimewindow": true, - "widgetCss": "", - "pageSize": 1024, - "noDataDisplayMessage": "", - "actions": { - "elementClick": [ - { - "name": "rule_engine_execution_details", - "icon": "insert_chart", - "type": "openDashboardState", - "targetDashboardStateId": "rule_engine_execution", - "setEntityId": false, - "stateEntityParamName": null, - "openRightLayout": false, - "id": "3c30248f-0cd8-fb97-a917-bc1e09984a79" - }, - { - "name": "rule_engine_statistics_details", - "icon": "show_chart", - "type": "openDashboardState", - "targetDashboardStateId": "rule_engine_statistics", - "setEntityId": false, - "stateEntityParamName": null, - "openRightLayout": false, - "id": "04e4565a-9e24-23df-f376-f2ec70a8165f" - } - ] - } - }, - "row": 0, - "col": 0, - "id": "a84fa70a-ddfa-3b24-9aa4-cf9ce91f919a" - }, - "d70d26d4-e22d-4ca9-9ea7-f9c87c093321": { - "typeFullFqn": "system.cards.markdown_card", - "type": "latest", - "sizeX": 5, - "sizeY": 3.5, - "config": { - "datasources": [ - { - "type": "entity", - "name": null, - "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", - "filterId": null, - "dataKeys": [ - { - "name": "jsExecutionApiState", - "type": "timeseries", - "label": "jsApiState", - "color": "#2196f3", - "settings": {}, - "_hash": 0.8830669138660703, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return value ? value : 'ENABLED';", - "aggregationType": "NONE" - }, - { - "name": "jsExecutionLimit", - "type": "timeseries", - "label": "jsLimit", - "color": "#4caf50", - "settings": {}, - "_hash": 0.5463603803546802, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return value !== '' ? parseInt(value, 10) : 0;", - "aggregationType": "NONE" - }, - { - "name": "jsExecutionCount", - "type": "timeseries", - "label": "jsCount", - "color": "#f44336", - "settings": {}, - "_hash": 0.5564241862015964, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return value !== '' ? parseInt(value, 10) : 0;", - "aggregationType": "NONE" - }, - { - "name": "jsExecutionApiState", - "type": "timeseries", - "label": "title", - "color": "#9c27b0", - "settings": {}, - "_hash": 0.7673280949238444, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return \"{i18n:api-usage.scripts}\";", - "aggregationType": "NONE" - }, - { - "name": "jsExecutionApiState", - "type": "timeseries", - "label": "jsUnit", - "color": "#8bc34a", - "settings": {}, - "_hash": 0.7926918686567068, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return \"{i18n:api-usage.javascript}\";", - "aggregationType": "NONE" - }, - { - "name": "tbelExecutionApiState", - "type": "timeseries", - "label": "tbelApiState", - "color": "#3f51b5", - "settings": {}, - "_hash": 0.2002981454581909, - "aggregationType": "NONE", - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return value ? value : 'ENABLED';" - }, - { - "name": "tbelExecutionLimit", - "type": "timeseries", - "label": "tbelLimit", - "color": "#ffeb3b", - "settings": {}, - "_hash": 0.5039854873031677, - "aggregationType": "NONE", - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return value !== '' ? parseInt(value, 10) : 0;" - }, - { - "name": "tbelExecutionCount", - "type": "timeseries", - "label": "tbelCount", - "color": "#e91e63", - "settings": {}, - "_hash": 0.9506731992087107, - "aggregationType": "NONE", - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return value !== '' ? parseInt(value, 10) : 0;" - }, - { - "name": "tbelExecutionApiState", - "type": "timeseries", - "label": "tbelUnit", - "color": "#ffeb3b", - "settings": {}, - "_hash": 0.3673530683177082, - "aggregationType": "NONE", - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return \"{i18n:api-usage.tbel}\";" - } - ], - "alarmFilterConfig": { - "statusList": [ - "ACTIVE" - ] - } - } - ], - "timewindow": { - "displayValue": "", - "selectedTab": 0, - "realtime": { - "realtimeType": 1, - "interval": 1000, - "timewindowMs": 60000, - "quickInterval": "CURRENT_DAY" - }, - "history": { - "historyType": 0, - "interval": 1000, - "timewindowMs": 60000, - "fixedTimewindow": { - "startTimeMs": 1708518962586, - "endTimeMs": 1708605362586 - }, - "quickInterval": "CURRENT_DAY" - }, - "aggregation": { - "type": "AVG", - "limit": 25000 - } - }, - "showTitle": false, - "backgroundColor": "#fff", - "color": "rgba(0, 0, 0, 0.87)", - "padding": "0px", - "settings": { - "useMarkdownTextFunction": true, - "markdownTextPattern": "", - "markdownTextFunction": "function toShortNumber(number) {\n const rounder = Math.pow(10, 1);\n const powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n ];\n let key = '';\n for (const power of powers) {\n const reduced = number / power.value;\n for (const power of powers) {\n let reduced = number / power.value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n number = reduced;\n key = power.key;\n break;\n }\n }\n }\n \n return number + key;\n}\n\nfunction calculateBarValues(count, limit) {\n let apiUsageBar = '0%';\n let apiUsagePercent = '';\n let apiUsageValue = `${toShortNumber(count)} / ∞`;\n if (Number.isFinite(limit) && limit > 0) {\n var percent = Math.min(100, ((count / limit) * 100));\n apiUsageBar = `${percent}%`\n apiUsagePercent = `${percent.toFixed(2)}%`;\n apiUsageValue = `${toShortNumber(count)} / ${toShortNumber(limit)}`;\n }\n \n return [apiUsageBar, apiUsagePercent, apiUsageValue]\n}\n\nconst [jsUsageBar, jsUsagePercent, jsUsageValue] = calculateBarValues(data[0].jsCount, data[0].jsLimit);\nconst [tbelUsageBar, tbelUsagePercent, tbelUsageValue] = calculateBarValues(data[0].tbelCount, data[0].tbelLimit);\n\nconst jsApiState = data[0].jsApiState;\nconst tbelApiState = data[0].tbelApiState;\nlet currentState;\nif (jsApiState === 'DISABLED' || tbelApiState === 'DISABLED') {\n currentState = 'DISABLED';\n} else if (jsApiState === 'WARNING' || tbelApiState === 'WARNING') {\n currentState = 'WARNING';\n} else {\n currentState = 'ENABLED';\n}\nconst cardClass = currentState.toLowerCase()\n\nreturn `
` +\n '
' +\n '
' +\n '
' +\n '
' +\n `${data[0].title}` +\n '
' +\n `
${currentState}
` +\n '
' +\n '
' +\n '
' +\n '
' +\n `
${data[0].jsUnit}
` +\n '
' +\n `
` +\n '
' +\n '
' +\n `
${jsUsagePercent}
` +\n '
' +\n `
${jsUsageValue}
` +\n '
' +\n '
' +\n '
' +\n '
' +\n '
' +\n `
${data[0].tbelUnit}
` +\n '
' +\n `
` +\n '
' +\n '
' +\n `
${tbelUsagePercent}
` +\n '
' +\n `
${tbelUsageValue}
` +\n '
' +\n '
' + \n '
' +\n '
' +\n '
' +\n '
' +\n '' +\n '
'+\n '' +\n '
' +\n '
'\n", - "applyDefaultMarkdownStyle": false, - "markdownCss": "\n" - }, - "title": "JavaScript functions", - "showTitleIcon": false, - "iconColor": "rgba(0, 0, 0, 0.87)", - "iconSize": "24px", - "titleTooltip": "", - "dropShadow": true, - "enableFullscreen": false, - "widgetStyle": {}, - "titleStyle": { - "fontSize": "16px", - "fontWeight": 400 - }, - "showLegend": false, - "useDashboardTimewindow": true, - "displayTimewindow": true, - "widgetCss": "", - "pageSize": 1024, - "noDataDisplayMessage": "", - "actions": { - "elementClick": [ - { - "name": "script_functions_details", - "icon": "insert_chart", - "useShowWidgetActionFunction": null, - "showWidgetActionFunction": "return true;", - "type": "openDashboardState", - "targetDashboardStateId": "script_functions", - "setEntityId": false, - "stateEntityParamName": null, - "openRightLayout": false, - "openInSeparateDialog": false, - "openInPopover": false, - "id": "d4961bea-84de-e1af-e50f-666b98d34cd5" - } - ] - } - }, - "row": 0, - "col": 0, - "id": "d70d26d4-e22d-4ca9-9ea7-f9c87c093321" - }, - "4d3ea95c-3188-9872-1817-2f989c7729e0": { - "typeFullFqn": "system.cards.markdown_card", - "type": "latest", - "sizeX": 5, - "sizeY": 3.5, - "config": { - "datasources": [ - { - "type": "entity", - "name": null, - "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", - "filterId": null, - "dataKeys": [ - { - "name": "storageDataPointsLimit", - "type": "timeseries", - "label": "limit", - "color": "#4caf50", - "settings": {}, - "_hash": 0.5463603803546802, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return value !== '' ? parseInt(value, 10) : 0;", - "aggregationType": "NONE" - }, - { - "name": "storageDataPointsCount", - "type": "timeseries", - "label": "count", - "color": "#f44336", - "settings": {}, - "_hash": 0.5564241862015964, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return value !== '' ? parseInt(value, 10) : 0;", - "aggregationType": "NONE" - }, - { - "name": "dbApiState", - "type": "timeseries", - "label": "apiStatus", - "color": "#ffc107", - "settings": {}, - "_hash": 0.8737107059960671, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return value ? value : 'enabled';", - "aggregationType": "NONE" - }, - { - "name": "dbApiState", - "type": "timeseries", - "label": "title", - "color": "#9c27b0", - "settings": {}, - "_hash": 0.6301889725474652, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return \"{i18n:api-usage.telemetry}\";" - }, - { - "name": "dbApiState", - "type": "timeseries", - "label": "unit", - "color": "#8bc34a", - "settings": {}, - "_hash": 0.0027742924142306613, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return \"{i18n:api-usage.data-points-storage-days}\";" - } - ], - "alarmFilterConfig": { - "statusList": [ - "ACTIVE" - ] - } - } - ], - "timewindow": { - "displayValue": "", - "selectedTab": 0, - "realtime": { - "realtimeType": 1, - "interval": 1000, - "timewindowMs": 60000, - "quickInterval": "CURRENT_DAY" - }, - "history": { - "historyType": 0, - "interval": 1000, - "timewindowMs": 60000, - "fixedTimewindow": { - "startTimeMs": 1708518962586, - "endTimeMs": 1708605362586 - }, - "quickInterval": "CURRENT_DAY" - }, - "aggregation": { - "type": "AVG", - "limit": 25000 - } - }, - "showTitle": false, - "backgroundColor": "#fff", - "color": "rgba(0, 0, 0, 0.87)", - "padding": "0px", - "settings": { - "useMarkdownTextFunction": true, - "markdownTextPattern": "", - "markdownTextFunction": "function toShortNumber(number) {\n const rounder = Math.pow(10, 1);\n const powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n ];\n let key = '';\n for (const power of powers) {\n let reduced = number / power.value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n number = reduced;\n key = power.key;\n break;\n }\n }\n \n return number + key;\n}\n\nfunction calculateBarValues(count, limit) {\n let apiUsageBar = '0%';\n let apiUsagePercent = '';\n let apiUsageValue = `${toShortNumber(count)} / ∞`;\n if (Number.isFinite(limit) && limit > 0) {\n var percent = Math.min(100, ((count / limit) * 100));\n apiUsageBar = `${percent}%`\n apiUsagePercent = `${percent.toFixed(2)}%`;\n apiUsageValue = `${toShortNumber(count)} / ${toShortNumber(limit)}`;\n }\n \n return [apiUsageBar, apiUsagePercent, apiUsageValue]\n}\n\nconst [apiUsageBar, apiUsagePercent, apiUsageValue] = calculateBarValues(data[0].count, data[0].limit);\n\n\nreturn `
` +\n '
' +\n '
' +\n '
' +\n '
${title}
' +\n `
${data[0].apiStatus.toUpperCase()}
` +\n '
' +\n '
' +\n `
${data[0].unit}
` +\n '
' +\n `
` +\n '
' +\n '
' +\n `
${apiUsagePercent}
` +\n '
' +\n `
${apiUsageValue}
` +\n '
' +\n '
' +\n '
' +\n '
' +\n '' +\n '
'+\n '' +\n '
' +\n '
'\n", - "applyDefaultMarkdownStyle": false, - "markdownCss": "\n" - }, - "title": "Telemetry persistence", - "showTitleIcon": false, - "iconColor": "rgba(0, 0, 0, 0.87)", - "iconSize": "24px", - "titleTooltip": "", - "dropShadow": true, - "enableFullscreen": false, - "widgetStyle": {}, - "titleStyle": { - "fontSize": "16px", - "fontWeight": 400 - }, - "showLegend": false, - "useDashboardTimewindow": true, - "displayTimewindow": true, - "widgetCss": "", - "pageSize": 1024, - "noDataDisplayMessage": "", - "actions": { - "elementClick": [ - { - "name": "telemetry_persistence_details", - "icon": "insert_chart", - "type": "openDashboardState", - "targetDashboardStateId": "telemetry_persistence", - "setEntityId": false, - "stateEntityParamName": null, - "openRightLayout": false, - "id": "6248831c-5b3f-8879-8548-afcf43f10610" - } - ] - } - }, - "row": 0, - "col": 0, - "id": "4d3ea95c-3188-9872-1817-2f989c7729e0" - }, - "2d0d6ff6-cd59-51d4-b916-38e22cdd0702": { - "typeFullFqn": "system.cards.markdown_card", - "type": "latest", - "sizeX": 5, - "sizeY": 3.5, - "config": { - "datasources": [ - { - "type": "entity", - "name": null, - "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", - "filterId": null, - "dataKeys": [ - { - "name": "createdAlarmsLimit", - "type": "timeseries", - "label": "limit", - "color": "#4caf50", - "settings": {}, - "_hash": 0.5463603803546802, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return value !== '' ? parseInt(value, 10) : 0;", - "aggregationType": "NONE" - }, - { - "name": "createdAlarmsCount", - "type": "timeseries", - "label": "count", - "color": "#f44336", - "settings": {}, - "_hash": 0.5564241862015964, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return value !== '' ? parseInt(value, 10) : 0;", - "aggregationType": "NONE" - }, - { - "name": "alarmApiState", - "type": "timeseries", - "label": "apiStatus", - "color": "#ffc107", - "settings": {}, - "_hash": 0.8737107059960671, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return value ? value : 'enabled';", - "aggregationType": "NONE" - }, - { - "name": "alarmApiState", - "type": "timeseries", - "label": "title", - "color": "#9c27b0", - "settings": {}, - "_hash": 0.43439375716502227, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return \"{i18n:api-usage.alarm}\";" - }, - { - "name": "alarmApiState", - "type": "timeseries", - "label": "unit", - "color": "#8bc34a", - "settings": {}, - "_hash": 0.9964061963495883, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return \"{i18n:api-usage.alarms-created}\";" - } - ], - "alarmFilterConfig": { - "statusList": [ - "ACTIVE" - ] - } - } - ], - "timewindow": { - "displayValue": "", - "selectedTab": 0, - "realtime": { - "realtimeType": 1, - "interval": 1000, - "timewindowMs": 60000, - "quickInterval": "CURRENT_DAY" - }, - "history": { - "historyType": 0, - "interval": 1000, - "timewindowMs": 60000, - "fixedTimewindow": { - "startTimeMs": 1708518962586, - "endTimeMs": 1708605362586 - }, - "quickInterval": "CURRENT_DAY" - }, - "aggregation": { - "type": "AVG", - "limit": 25000 - } - }, - "showTitle": false, - "backgroundColor": "#fff", - "color": "rgba(0, 0, 0, 0.87)", - "padding": "0px", - "settings": { - "useMarkdownTextFunction": true, - "markdownTextPattern": "", - "markdownTextFunction": "function toShortNumber(number) {\n const rounder = Math.pow(10, 1);\n const powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n ];\n let key = '';\n for (const power of powers) {\n let reduced = number / power.value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n number = reduced;\n key = power.key;\n break;\n }\n }\n \n return number + key;\n}\n\nfunction calculateBarValues(count, limit) {\n let apiUsageBar = '0%';\n let apiUsagePercent = '';\n let apiUsageValue = `${toShortNumber(count)} / ∞`;\n if (Number.isFinite(limit) && limit > 0) {\n var percent = Math.min(100, ((count / limit) * 100));\n apiUsageBar = `${percent}%`\n apiUsagePercent = `${percent.toFixed(2)}%`;\n apiUsageValue = `${toShortNumber(count)} / ${toShortNumber(limit)}`;\n }\n \n return [apiUsageBar, apiUsagePercent, apiUsageValue]\n}\n\nconst [apiUsageBar, apiUsagePercent, apiUsageValue] = calculateBarValues(data[0].count, data[0].limit);\n\n\nreturn `
` +\n '
' +\n '
' +\n '
' +\n '
${title}
' +\n `
${data[0].apiStatus.toUpperCase()}
` +\n '
' +\n '
' +\n `
${data[0].unit}
` +\n '
' +\n `
` +\n '
' +\n '
' +\n `
${apiUsagePercent}
` +\n '
' +\n `
${apiUsageValue}
` +\n '
' +\n '
' +\n '
' +\n '
' +\n '' +\n '
'+\n '' +\n '
' +\n '
'\n", - "applyDefaultMarkdownStyle": false, - "markdownCss": "\n" - }, - "title": "Alarm created", - "showTitleIcon": false, - "iconColor": "rgba(0, 0, 0, 0.87)", - "iconSize": "24px", - "titleTooltip": "", - "dropShadow": true, - "enableFullscreen": false, - "widgetStyle": {}, - "titleStyle": { - "fontSize": "16px", - "fontWeight": 400 - }, - "showLegend": false, - "useDashboardTimewindow": true, - "displayTimewindow": true, - "widgetCss": "", - "pageSize": 1024, - "noDataDisplayMessage": "", - "actions": { - "elementClick": [ - { - "name": "email_messages_details", - "icon": "insert_chart", - "type": "openDashboardState", - "targetDashboardStateId": "alarms_created", - "setEntityId": false, - "stateEntityParamName": null, - "openInSeparateDialog": null, - "dialogTitle": null, - "dialogHideDashboardToolbar": true, - "dialogWidth": null, - "dialogHeight": null, - "openRightLayout": false, - "id": "946ba769-84ac-1507-6baa-94701de8967b" - } - ] - } - }, - "row": 0, - "col": 0, - "id": "2d0d6ff6-cd59-51d4-b916-38e22cdd0702" - }, - "120573cc-e246-eb49-7d80-68e5d3b3c0cc": { - "typeFullFqn": "system.cards.markdown_card", - "type": "latest", - "sizeX": 5, - "sizeY": 3.5, - "config": { - "datasources": [ - { - "type": "entity", - "name": null, - "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", - "filterId": null, - "dataKeys": [ - { - "name": "emailApiState", - "type": "timeseries", - "label": "apiState", - "color": "#2196f3", - "settings": {}, - "_hash": 0.8830669138660703, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": null, - "postFuncBody": null - }, - { - "name": "emailLimit", - "type": "timeseries", - "label": "limit", - "color": "#4caf50", - "settings": {}, - "_hash": 0.5463603803546802, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return value !== '' ? parseInt(value, 10) : 0;", - "aggregationType": "NONE" - }, - { - "name": "emailCount", - "type": "timeseries", - "label": "count", - "color": "#f44336", - "settings": {}, - "_hash": 0.5564241862015964, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return value !== '' ? parseInt(value, 10) : 0;", - "aggregationType": "NONE" - }, - { - "name": "smsApiState", - "type": "timeseries", - "label": "apiStatePoint", - "color": "#e91e63", - "settings": {}, - "_hash": 0.2969682764607864, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": null, - "postFuncBody": null - }, - { - "name": "smsLimit", - "type": "timeseries", - "label": "pointsLimit", - "color": "#9c27b0", - "settings": {}, - "_hash": 0.22082255831864894, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return value !== '' ? parseInt(value, 10) : 0;", - "aggregationType": "NONE" - }, - { - "name": "smsCount", - "type": "timeseries", - "label": "pointsCount", - "color": "#8bc34a", - "settings": {}, - "_hash": 0.6340356364819146, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return value !== '' ? parseInt(value, 10) : 0;", - "aggregationType": "NONE" - }, - { - "name": "notificationApiState", - "type": "timeseries", - "label": "title", - "color": "#3f51b5", - "settings": {}, - "_hash": 0.6894070537030252, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return \"{i18n:api-usage.notifications}\";", - "aggregationType": "NONE" - }, - { - "name": "notificationApiState", - "type": "timeseries", - "label": "unit", - "color": "#3f51b5", - "settings": {}, - "_hash": 0.0005447336528170421, - "aggregationType": "NONE", - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return '{i18n:api-usage.email}';" - }, - { - "name": "notificationApiState", - "type": "timeseries", - "label": "pointsUnit", - "color": "#e91e63", - "settings": {}, - "_hash": 0.12117146988088967, - "aggregationType": "NONE", - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": true, - "postFuncBody": "return '{i18n:api-usage.sms}';" - } - ], - "alarmFilterConfig": { - "statusList": [ - "ACTIVE" - ] - } - } - ], - "timewindow": { - "displayValue": "", - "selectedTab": 0, - "realtime": { - "realtimeType": 1, - "interval": 1000, - "timewindowMs": 60000, - "quickInterval": "CURRENT_DAY" - }, - "history": { - "historyType": 0, - "interval": 1000, - "timewindowMs": 60000, - "fixedTimewindow": { - "startTimeMs": 1708518962586, - "endTimeMs": 1708605362586 - }, - "quickInterval": "CURRENT_DAY" - }, - "aggregation": { - "type": "AVG", - "limit": 25000 - } - }, - "showTitle": false, - "backgroundColor": "#fff", - "color": "rgba(0, 0, 0, 0.87)", - "padding": "0px", - "settings": { - "useMarkdownTextFunction": true, - "markdownTextPattern": "", - "markdownTextFunction": "function toShortNumber(number) {\n const rounder = Math.pow(10, 1);\n const powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n ];\n let key = '';\n for (const power of powers) {\n const reduced = number / power.value;\n for (const power of powers) {\n let reduced = number / power.value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n number = reduced;\n key = power.key;\n break;\n }\n }\n }\n \n return number + key;\n}\n\nfunction calculateBarValues(count, limit) {\n let apiUsageBar = '0%';\n let apiUsagePercent = '';\n let apiUsageValue = `${toShortNumber(count)} / ∞`;\n if (Number.isFinite(limit) && limit > 0) {\n var percent = Math.min(100, ((count / limit) * 100));\n apiUsageBar = `${percent}%`\n apiUsagePercent = `${percent.toFixed(2)}%`;\n apiUsageValue = `${toShortNumber(count)} / ${toShortNumber(limit)}`;\n }\n \n return [apiUsageBar, apiUsagePercent, apiUsageValue]\n}\n\nconst [apiUsageBar, apiUsagePercent, apiUsageValue] = calculateBarValues(data[0].count, data[0].limit);\nconst [apiUsageBar2, apiUsagePercent2, apiUsageValue2] = calculateBarValues(data[0].pointsCount, data[0].pointsLimit);\n\nconst apiState = data[0].apiState;\nconst apiStatePoint = data[0].apiStatePoint;\nlet currentState;\nif (apiState === 'DISABLED' || apiStatePoint === 'DISABLED') {\n currentState = 'DISABLED';\n} else if (apiState === 'WARNING' || apiStatePoint === 'WARNING') {\n currentState = 'WARNING';\n} else {\n currentState = 'ENABLED';\n}\n\n\n\nreturn `
` +\n '
' +\n '
' +\n '
' +\n '
' +\n `${data[0].title}` +\n '
' +\n `
${currentState}
` +\n '
' +\n '
' +\n '
' +\n '
' +\n `
${data[0].unit}
` +\n '
' +\n `
` +\n '
' +\n '
' +\n `
${apiUsagePercent}
` +\n '
' +\n `
${apiUsageValue}
` +\n '
' +\n '
' +\n '
' +\n '
' +\n '
' +\n `
${data[0].pointsUnit}
` +\n '
' +\n `
` +\n '
' +\n '
' +\n `
${apiUsagePercent2}
` +\n '
' +\n `
${apiUsageValue2}
` +\n '
' +\n '
' + \n '
' +\n '
' +\n '
' +\n '
' +\n '' +\n '
'+\n '' +\n '
' +\n '
'\n", - "applyDefaultMarkdownStyle": false, - "markdownCss": "\n" - }, - "title": "Notifications (Email/SMS)", - "showTitleIcon": false, - "iconColor": "rgba(0, 0, 0, 0.87)", - "iconSize": "24px", - "titleTooltip": "", - "dropShadow": true, - "enableFullscreen": false, - "widgetStyle": {}, - "titleStyle": { - "fontSize": "16px", - "fontWeight": 400 - }, - "showLegend": false, - "useDashboardTimewindow": true, - "displayTimewindow": true, - "widgetCss": "", - "pageSize": 1024, - "noDataDisplayMessage": "", - "actions": { - "elementClick": [ - { - "name": "transport_details", - "icon": "insert_chart", - "type": "openDashboardState", - "targetDashboardStateId": "notifications", - "setEntityId": false, - "stateEntityParamName": null, - "openInSeparateDialog": null, - "dialogTitle": null, - "dialogHideDashboardToolbar": true, - "dialogWidth": null, - "dialogHeight": null, - "openRightLayout": false, - "id": "46b7cefe-e1f2-67c1-4055-3a214520f869" - } - ] - } - }, - "row": 0, - "col": 0, - "id": "120573cc-e246-eb49-7d80-68e5d3b3c0cc" - }, - "63f99d90-23ab-f8c2-3290-1e693ded5a2e": { - "typeFullFqn": "system.time_series_chart", - "type": "timeseries", - "sizeX": 8, - "sizeY": 5, - "config": { - "datasources": [ - { - "type": "entity", - "name": null, - "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", - "filterId": null, - "dataKeys": [ - { - "name": "transportMsgCountHourly", - "type": "timeseries", - "label": "{i18n:api-usage.transport-messages}", - "color": "#2196f3", - "settings": { - "excludeFromStacking": false, - "hideDataByDefault": false, - "disableDataHiding": false, - "removeFromLegend": false, - "showLines": false, - "fillLines": false, - "showPoints": false, - "showPointShape": "circle", - "pointShapeFormatter": "", - "showPointsLineWidth": 5, - "showPointsRadius": 3, - "showSeparateAxis": false, - "axisPosition": "left", - "thresholds": [ - { - "thresholdValueSource": "predefinedValue" - } - ], - "comparisonSettings": { - "showValuesForComparison": true - }, - "type": "bar" - }, - "_hash": 0.0661644137210089, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": false, - "postFuncBody": null, - "aggregationType": null - }, - { - "name": "transportDataPointsCountHourly", - "type": "timeseries", - "label": "{i18n:api-usage.transport-data-points}", - "color": "#4caf50", - "settings": { - "excludeFromStacking": false, - "hideDataByDefault": false, - "disableDataHiding": false, - "removeFromLegend": false, - "showLines": false, - "fillLines": false, - "showPoints": false, - "showPointShape": "circle", - "pointShapeFormatter": "", - "showPointsLineWidth": 5, - "showPointsRadius": 3, - "showSeparateAxis": false, - "axisPosition": "left", - "thresholds": [ - { - "thresholdValueSource": "predefinedValue" - } - ], - "comparisonSettings": { - "showValuesForComparison": true - }, - "type": "bar" - }, - "_hash": 0.46849996721308895, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": null, - "postFuncBody": null - } - ], - "alarmFilterConfig": { - "statusList": [ - "ACTIVE" - ] - } - } - ], - "timewindow": { - "hideInterval": false, - "hideLastInterval": false, - "hideQuickInterval": false, - "hideAggregation": false, - "hideAggInterval": false, - "hideTimezone": false, - "selectedTab": 0, - "realtime": { - "realtimeType": 0, - "timewindowMs": 86400000, - "quickInterval": "CURRENT_DAY", - "interval": 300000 - }, - "aggregation": { - "type": "NONE", - "limit": 50000 - }, - "timezone": null - }, - "showTitle": true, - "backgroundColor": "#FFFFFF", - "color": "rgba(0, 0, 0, 0.87)", - "padding": "0px", - "settings": { - "yAxes": { - "default": { - "units": null, - "decimals": 0, - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "left", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)", - "id": "default", - "order": 0, - "min": null, - "max": null - } - }, - "thresholds": [], - "dataZoom": false, - "stack": false, - "xAxis": { - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "bottom", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 10, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": null, - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)" - }, - "noAggregationBarWidthSettings": { - "strategy": "group", - "groupWidth": { - "relative": false, - "relativeWidth": 2, - "absoluteWidth": 3600000 - }, - "barWidth": { - "relative": true, - "relativeWidth": 2, - "absoluteWidth": 1000 - } - }, - "showLegend": true, - "legendLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "legendLabelColor": "rgba(0, 0, 0, 0.76)", - "legendConfig": { - "direction": "column", - "position": "bottom", - "sortDataKeys": false, - "showMin": false, - "showMax": false, - "showAvg": false, - "showTotal": true, - "showLatest": false - }, - "showTooltip": true, - "tooltipTrigger": "axis", - "tooltipValueFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "500", - "lineHeight": "16px" - }, - "tooltipValueColor": "rgba(0, 0, 0, 0.76)", - "tooltipShowDate": true, - "tooltipDateFormat": { - "format": "yyyy-MM-dd HH:mm:ss", - "lastUpdateAgo": false, - "custom": false - }, - "tooltipDateFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "tooltipDateColor": "rgba(0, 0, 0, 0.76)", - "tooltipDateInterval": true, - "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", - "tooltipBackgroundBlur": 4, - "animation": { - "animation": true, - "animationThreshold": 2000, - "animationDuration": 1000, - "animationEasing": "cubicOut", - "animationDelay": 0, - "animationDurationUpdate": 300, - "animationEasingUpdate": "cubicOut", - "animationDelayUpdate": 0 - }, - "background": { - "type": "color", - "color": "#fff", - "overlay": { - "enabled": false, - "color": "rgba(255,255,255,0.72)", - "blur": 3 - } - } - }, - "title": "{i18n:api-usage.transport-hourly-activity}", - "dropShadow": true, - "enableFullscreen": true, - "titleStyle": null, - "configMode": "basic", - "actions": { - "headerButton": [ - { - "name": "{i18n:api-usage.view-details}", - "icon": "insert_chart", - "type": "openDashboardState", - "targetDashboardStateId": "transport", - "setEntityId": false, - "stateEntityParamName": null, - "openRightLayout": false, - "id": "6ef12f6a-0266-25cf-6ca5-5dcb772252c6" - } - ] - }, - "showTitleIcon": false, - "titleIcon": "thermostat", - "iconColor": "#1F6BDD", - "useDashboardTimewindow": false, - "displayTimewindow": true, - "titleFont": { - "size": 16, - "sizeUnit": "px", - "family": "Roboto", - "weight": "500", - "style": "normal", - "lineHeight": "24px" - }, - "titleColor": "rgba(0, 0, 0, 0.87)", - "titleTooltip": "", - "widgetStyle": {}, - "widgetCss": "", - "pageSize": 1024, - "units": "", - "decimals": null, - "noDataDisplayMessage": "", - "timewindowStyle": { - "showIcon": false, - "iconSize": "24px", - "icon": null, - "iconPosition": "left", - "font": { - "size": 12, - "sizeUnit": "px", - "family": "Roboto", - "weight": "400", - "style": "normal", - "lineHeight": "16px" - }, - "color": "rgba(0, 0, 0, 0.38)", - "displayTypePrefix": true - }, - "margin": "0px", - "borderRadius": "0px", - "iconSize": "0px" - }, - "row": 0, - "col": 0, - "id": "63f99d90-23ab-f8c2-3290-1e693ded5a2e" - }, - "a2b7e906-2d8a-41a8-99a6-409531bfa743": { - "typeFullFqn": "system.time_series_chart", - "type": "timeseries", - "sizeX": 8, - "sizeY": 5, - "config": { - "datasources": [ - { - "type": "entity", - "name": null, - "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", - "filterId": null, - "dataKeys": [ - { - "name": "ruleEngineExecutionCountHourly", - "type": "timeseries", - "label": "{i18n:api-usage.rule-engine-executions}", - "color": "#ab00ff", - "settings": { - "showInLegend": true, - "dataHiddenByDefault": false, - "type": "bar", - "lineSettings": { - "showLine": true, - "step": false, - "stepType": "start", - "smooth": false, - "lineType": "solid", - "lineWidth": 2, - "showPoints": false, - "showPointLabel": false, - "pointLabelPosition": "top", - "pointLabelFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "pointLabelColor": "rgba(0, 0, 0, 0.76)", - "pointShape": "emptyCircle", - "pointSize": 4, - "fillAreaSettings": { - "type": "none", - "opacity": 0.4, - "gradient": { - "start": 100, - "end": 0 - } - } - }, - "barSettings": { - "showBorder": false, - "borderWidth": 2, - "borderRadius": 0, - "showLabel": false, - "labelPosition": "top", - "labelFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.76)", - "backgroundSettings": { - "type": "none", - "opacity": 0.4, - "gradient": { - "start": 100, - "end": 0 - } - } - } - }, - "_hash": 0.0661644137210089, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": null, - "postFuncBody": null, - "aggregationType": null - } - ], - "alarmFilterConfig": { - "statusList": [ - "ACTIVE" - ] - } - } - ], - "timewindow": { - "hideInterval": false, - "hideLastInterval": false, - "hideQuickInterval": false, - "hideAggregation": false, - "hideAggInterval": false, - "hideTimezone": false, - "selectedTab": 0, - "realtime": { - "realtimeType": 0, - "timewindowMs": 86400000, - "quickInterval": "CURRENT_YEAR", - "interval": 7200000 - }, - "aggregation": { - "type": "NONE", - "limit": 50000 - }, - "timezone": null - }, - "showTitle": true, - "backgroundColor": "#FFFFFF", - "color": "rgba(0, 0, 0, 0.87)", - "padding": "0px", - "settings": { - "yAxes": { - "default": { - "units": null, - "decimals": 0, - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "left", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)", - "id": "default", - "order": 0, - "min": null, - "max": null - } - }, - "thresholds": [], - "dataZoom": false, - "stack": false, - "xAxis": { - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "bottom", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 10, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)" - }, - "noAggregationBarWidthSettings": { - "strategy": "group", - "groupWidth": { - "relative": false, - "relativeWidth": 2, - "absoluteWidth": 3600000 - }, - "barWidth": { - "relative": true, - "relativeWidth": 2, - "absoluteWidth": 1000 - } - }, - "showLegend": true, - "legendLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "legendLabelColor": "rgba(0, 0, 0, 0.76)", - "legendConfig": { - "direction": "column", - "position": "bottom", - "sortDataKeys": false, - "showMin": false, - "showMax": false, - "showAvg": false, - "showTotal": true, - "showLatest": false - }, - "showTooltip": true, - "tooltipTrigger": "axis", - "tooltipValueFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "500", - "lineHeight": "16px" - }, - "tooltipValueColor": "rgba(0, 0, 0, 0.76)", - "tooltipShowDate": true, - "tooltipDateFormat": { - "format": "yyyy-MM-dd HH:mm:ss", - "lastUpdateAgo": false, - "custom": false - }, - "tooltipDateFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "tooltipDateColor": "rgba(0, 0, 0, 0.76)", - "tooltipDateInterval": true, - "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", - "tooltipBackgroundBlur": 4, - "animation": { - "animation": true, - "animationThreshold": 2000, - "animationDuration": 1000, - "animationEasing": "cubicOut", - "animationDelay": 0, - "animationDurationUpdate": 300, - "animationEasingUpdate": "cubicOut", - "animationDelayUpdate": 0 - }, - "background": { - "type": "color", - "color": "#fff", - "overlay": { - "enabled": false, - "color": "rgba(255,255,255,0.72)", - "blur": 3 - } - } - }, - "title": "{i18n:api-usage.rule-engine-hourly-activity}", - "dropShadow": true, - "enableFullscreen": true, - "titleStyle": null, - "configMode": "basic", - "actions": { - "headerButton": [ - { - "name": "{i18n:api-usage.view-statistics}", - "icon": "show_chart", - "type": "openDashboardState", - "targetDashboardStateId": "rule_engine_statistics", - "setEntityId": false, - "stateEntityParamName": null, - "openRightLayout": false, - "id": "f9f08190-9ed9-d802-5b7a-c57ff84b5648" - }, - { - "name": "{i18n:api-usage.view-details}", - "icon": "insert_chart", - "type": "openDashboardState", - "targetDashboardStateId": "rule_engine_execution", - "setEntityId": false, - "stateEntityParamName": null, - "openRightLayout": false, - "id": "1aec196b-44ba-ddf4-c4dc-c3f60c1eb6fc" - } - ] - }, - "showTitleIcon": false, - "titleIcon": "thermostat", - "iconColor": "#1F6BDD", - "useDashboardTimewindow": false, - "displayTimewindow": true, - "titleFont": { - "size": 16, - "sizeUnit": "px", - "family": "Roboto", - "weight": "500", - "style": "normal", - "lineHeight": "24px" - }, - "titleColor": "rgba(0, 0, 0, 0.87)", - "titleTooltip": "", - "widgetStyle": {}, - "widgetCss": "", - "pageSize": 1024, - "units": "", - "decimals": null, - "noDataDisplayMessage": "", - "timewindowStyle": { - "showIcon": false, - "iconSize": "24px", - "icon": null, - "iconPosition": "left", - "font": { - "size": 12, - "sizeUnit": "px", - "family": "Roboto", - "weight": "400", - "style": "normal", - "lineHeight": "16px" - }, - "color": "rgba(0, 0, 0, 0.38)", - "displayTypePrefix": true - }, - "margin": "0px", - "borderRadius": "0px", - "iconSize": "0px" - }, - "row": 0, - "col": 0, - "id": "a2b7e906-2d8a-41a8-99a6-409531bfa743" - }, - "ca996b66-ab7e-f977-152c-98e4ebf2a901": { - "typeFullFqn": "system.time_series_chart", - "type": "timeseries", - "sizeX": 8, - "sizeY": 5, - "config": { - "datasources": [ - { - "type": "entity", - "name": null, - "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", - "filterId": null, - "dataKeys": [ - { - "name": "jsExecutionCountHourly", - "type": "timeseries", - "label": "{i18n:api-usage.javascript-executions}", - "color": "#ff9900", - "settings": { - "showInLegend": true, - "dataHiddenByDefault": false, - "type": "bar", - "lineSettings": { - "showLine": true, - "step": false, - "stepType": "start", - "smooth": false, - "lineType": "solid", - "lineWidth": 2, - "showPoints": false, - "showPointLabel": false, - "pointLabelPosition": "top", - "pointLabelFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "pointLabelColor": "rgba(0, 0, 0, 0.76)", - "pointShape": "emptyCircle", - "pointSize": 4, - "fillAreaSettings": { - "type": "none", - "opacity": 0.4, - "gradient": { - "start": 100, - "end": 0 - } - } - }, - "barSettings": { - "showBorder": false, - "borderWidth": 2, - "borderRadius": 0, - "showLabel": false, - "labelPosition": "top", - "labelFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.76)", - "backgroundSettings": { - "type": "none", - "opacity": 0.4, - "gradient": { - "start": 100, - "end": 0 - } - } - } - }, - "_hash": 0.0661644137210089, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": null, - "postFuncBody": null, - "aggregationType": null - }, - { - "name": "tbelExecutionCountHourly", - "type": "timeseries", - "label": "{i18n:api-usage.tbel-executions}", - "color": "#4caf50", - "settings": { - "showInLegend": true, - "dataHiddenByDefault": false, - "type": "bar", - "lineSettings": { - "showLine": true, - "step": false, - "stepType": "start", - "smooth": false, - "lineType": "solid", - "lineWidth": 2, - "showPoints": false, - "showPointLabel": false, - "pointLabelPosition": "top", - "pointLabelFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "pointLabelColor": "rgba(0, 0, 0, 0.76)", - "pointShape": "emptyCircle", - "pointSize": 4, - "fillAreaSettings": { - "type": "none", - "opacity": 0.4, - "gradient": { - "start": 100, - "end": 0 - } - } - }, - "barSettings": { - "showBorder": false, - "borderWidth": 2, - "borderRadius": 0, - "showLabel": false, - "labelPosition": "top", - "labelFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.76)", - "backgroundSettings": { - "type": "none", - "opacity": 0.4, - "gradient": { - "start": 100, - "end": 0 - } - } - } - }, - "_hash": 0.6818645685001823, - "aggregationType": null, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": null, - "postFuncBody": null - } - ], - "alarmFilterConfig": { - "statusList": [ - "ACTIVE" - ] - } - } - ], - "timewindow": { - "hideInterval": false, - "hideLastInterval": false, - "hideQuickInterval": false, - "hideAggregation": false, - "hideAggInterval": false, - "hideTimezone": false, - "selectedTab": 0, - "realtime": { - "realtimeType": 0, - "timewindowMs": 86400000, - "quickInterval": "CURRENT_DAY", - "interval": 3600000 - }, - "aggregation": { - "type": "NONE", - "limit": 50000 - }, - "timezone": null - }, - "showTitle": true, - "backgroundColor": "#FFFFFF", - "color": "rgba(0, 0, 0, 0.87)", - "padding": "0px", - "settings": { - "yAxes": { - "default": { - "units": null, - "decimals": 0, - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "left", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)", - "id": "default", - "order": 0, - "min": null, - "max": null - } - }, - "thresholds": [], - "dataZoom": false, - "stack": false, - "xAxis": { - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "bottom", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 10, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)" - }, - "noAggregationBarWidthSettings": { - "strategy": "group", - "groupWidth": { - "relative": false, - "relativeWidth": 2, - "absoluteWidth": 3600000 - }, - "barWidth": { - "relative": true, - "relativeWidth": 2, - "absoluteWidth": 1000 - } - }, - "showLegend": true, - "legendLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "legendLabelColor": "rgba(0, 0, 0, 0.76)", - "legendConfig": { - "direction": "column", - "position": "bottom", - "sortDataKeys": false, - "showMin": false, - "showMax": false, - "showAvg": false, - "showTotal": true, - "showLatest": false - }, - "showTooltip": true, - "tooltipTrigger": "axis", - "tooltipValueFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "500", - "lineHeight": "16px" - }, - "tooltipValueColor": "rgba(0, 0, 0, 0.76)", - "tooltipShowDate": true, - "tooltipDateFormat": { - "format": "yyyy-MM-dd HH:mm:ss", - "lastUpdateAgo": false, - "custom": false - }, - "tooltipDateFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "tooltipDateColor": "rgba(0, 0, 0, 0.76)", - "tooltipDateInterval": true, - "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", - "tooltipBackgroundBlur": 4, - "animation": { - "animation": true, - "animationThreshold": 2000, - "animationDuration": 1000, - "animationEasing": "cubicOut", - "animationDelay": 0, - "animationDurationUpdate": 300, - "animationEasingUpdate": "cubicOut", - "animationDelayUpdate": 0 - }, - "background": { - "type": "color", - "color": "#fff", - "overlay": { - "enabled": false, - "color": "rgba(255,255,255,0.72)", - "blur": 3 - } - } - }, - "title": "{i18n:api-usage.scripts-hourly-activity}", - "dropShadow": true, - "enableFullscreen": true, - "titleStyle": null, - "configMode": "basic", - "actions": { - "headerButton": [ - { - "name": "{i18n:api-usage.view-details}", - "icon": "insert_chart", - "useShowWidgetActionFunction": null, - "showWidgetActionFunction": "return true;", - "type": "openDashboardState", - "targetDashboardStateId": "script_functions", - "setEntityId": false, - "stateEntityParamName": null, - "openRightLayout": false, - "openInSeparateDialog": false, - "openInPopover": false, - "id": "4687d3f6-8800-a3b6-26e5-0d33f3b828a9" - } - ] - }, - "showTitleIcon": false, - "titleIcon": "thermostat", - "iconColor": "#1F6BDD", - "useDashboardTimewindow": false, - "displayTimewindow": true, - "titleFont": { - "size": 16, - "sizeUnit": "px", - "family": "Roboto", - "weight": "500", - "style": "normal", - "lineHeight": "24px" - }, - "titleColor": "rgba(0, 0, 0, 0.87)", - "titleTooltip": "", - "widgetStyle": {}, - "widgetCss": "", - "pageSize": 1024, - "units": "", - "decimals": null, - "noDataDisplayMessage": "", - "timewindowStyle": { - "showIcon": false, - "iconSize": "24px", - "icon": null, - "iconPosition": "left", - "font": { - "size": 12, - "sizeUnit": "px", - "family": "Roboto", - "weight": "400", - "style": "normal", - "lineHeight": "16px" - }, - "color": "rgba(0, 0, 0, 0.38)", - "displayTypePrefix": true - }, - "margin": "0px", - "borderRadius": "0px", - "iconSize": "0px" - }, - "row": 0, - "col": 0, - "id": "ca996b66-ab7e-f977-152c-98e4ebf2a901" - }, - "a3c2f1bb-7d3a-f11c-7b3d-28cd84fdfe34": { - "typeFullFqn": "system.time_series_chart", - "type": "timeseries", - "sizeX": 8, - "sizeY": 5, - "config": { - "datasources": [ - { - "type": "entity", - "name": null, - "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", - "filterId": null, - "dataKeys": [ - { - "name": "storageDataPointsCountHourly", - "type": "timeseries", - "label": "{i18n:api-usage.data-points-storage-days}", - "color": "#1039ee", - "settings": { - "showInLegend": true, - "dataHiddenByDefault": false, - "type": "bar", - "lineSettings": { - "showLine": true, - "step": false, - "stepType": "start", - "smooth": false, - "lineType": "solid", - "lineWidth": 2, - "showPoints": false, - "showPointLabel": false, - "pointLabelPosition": "top", - "pointLabelFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "pointLabelColor": "rgba(0, 0, 0, 0.76)", - "pointShape": "emptyCircle", - "pointSize": 4, - "fillAreaSettings": { - "type": "none", - "opacity": 0.4, - "gradient": { - "start": 100, - "end": 0 - } - } - }, - "barSettings": { - "showBorder": false, - "borderWidth": 2, - "borderRadius": 0, - "showLabel": false, - "labelPosition": "top", - "labelFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.76)", - "backgroundSettings": { - "type": "none", - "opacity": 0.4, - "gradient": { - "start": 100, - "end": 0 - } - } - } - }, - "_hash": 0.0661644137210089, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": null, - "postFuncBody": null, - "aggregationType": null - } - ], - "alarmFilterConfig": { - "statusList": [ - "ACTIVE" - ] - } - } - ], - "timewindow": { - "hideInterval": false, - "hideLastInterval": false, - "hideQuickInterval": false, - "hideAggregation": false, - "hideAggInterval": false, - "hideTimezone": false, - "selectedTab": 0, - "realtime": { - "realtimeType": 0, - "timewindowMs": 86400000, - "quickInterval": "CURRENT_DAY", - "interval": 300000 - }, - "aggregation": { - "type": "NONE", - "limit": 50000 - }, - "timezone": null - }, - "showTitle": true, - "backgroundColor": "#FFFFFF", - "color": "rgba(0, 0, 0, 0.87)", - "padding": "0px", - "settings": { - "yAxes": { - "default": { - "units": null, - "decimals": 0, - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "left", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)", - "id": "default", - "order": 0, - "min": null, - "max": null - } - }, - "thresholds": [], - "dataZoom": false, - "stack": false, - "xAxis": { - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "bottom", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 10, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)" - }, - "noAggregationBarWidthSettings": { - "strategy": "group", - "groupWidth": { - "relative": false, - "relativeWidth": 2, - "absoluteWidth": 3600000 - }, - "barWidth": { - "relative": true, - "relativeWidth": 2, - "absoluteWidth": 1000 - } - }, - "showLegend": true, - "legendLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "legendLabelColor": "rgba(0, 0, 0, 0.76)", - "legendConfig": { - "direction": "column", - "position": "bottom", - "sortDataKeys": false, - "showMin": false, - "showMax": false, - "showAvg": false, - "showTotal": true, - "showLatest": false - }, - "showTooltip": true, - "tooltipTrigger": "axis", - "tooltipValueFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "500", - "lineHeight": "16px" - }, - "tooltipValueColor": "rgba(0, 0, 0, 0.76)", - "tooltipShowDate": true, - "tooltipDateFormat": { - "format": "yyyy-MM-dd HH:mm:ss", - "lastUpdateAgo": false, - "custom": false - }, - "tooltipDateFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "tooltipDateColor": "rgba(0, 0, 0, 0.76)", - "tooltipDateInterval": true, - "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", - "tooltipBackgroundBlur": 4, - "animation": { - "animation": true, - "animationThreshold": 2000, - "animationDuration": 1000, - "animationEasing": "cubicOut", - "animationDelay": 0, - "animationDurationUpdate": 300, - "animationEasingUpdate": "cubicOut", - "animationDelayUpdate": 0 - }, - "background": { - "type": "color", - "color": "#fff", - "overlay": { - "enabled": false, - "color": "rgba(255,255,255,0.72)", - "blur": 3 - } - } - }, - "title": "{i18n:api-usage.telemetry-persistence-hourly-activity}", - "dropShadow": true, - "enableFullscreen": true, - "titleStyle": null, - "configMode": "basic", - "actions": { - "headerButton": [ - { - "name": "{i18n:api-usage.view-details}", - "icon": "insert_chart", - "type": "openDashboardState", - "targetDashboardStateId": "telemetry_persistence", - "setEntityId": false, - "stateEntityParamName": null, - "openRightLayout": false, - "id": "16707efb-e572-bd02-c219-55fc1b0f672a" - } - ] - }, - "showTitleIcon": false, - "titleIcon": "thermostat", - "iconColor": "#1F6BDD", - "useDashboardTimewindow": false, - "displayTimewindow": true, - "titleFont": { - "size": 16, - "sizeUnit": "px", - "family": "Roboto", - "weight": "500", - "style": "normal", - "lineHeight": "24px" - }, - "titleColor": "rgba(0, 0, 0, 0.87)", - "titleTooltip": "", - "widgetStyle": {}, - "widgetCss": "", - "pageSize": 1024, - "units": "", - "decimals": null, - "noDataDisplayMessage": "", - "timewindowStyle": { - "showIcon": false, - "iconSize": "24px", - "icon": null, - "iconPosition": "left", - "font": { - "size": 12, - "sizeUnit": "px", - "family": "Roboto", - "weight": "400", - "style": "normal", - "lineHeight": "16px" - }, - "color": "rgba(0, 0, 0, 0.38)", - "displayTypePrefix": true - }, - "margin": "0px", - "borderRadius": "0px", - "iconSize": "0px" - }, - "row": 0, - "col": 0, - "id": "a3c2f1bb-7d3a-f11c-7b3d-28cd84fdfe34" - }, - "5cebd4f1-ff6e-62f9-025c-8e7583c3d66a": { - "typeFullFqn": "system.time_series_chart", - "type": "timeseries", - "sizeX": 8, - "sizeY": 5, - "config": { - "datasources": [ - { - "type": "entity", - "name": null, - "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", - "filterId": null, - "dataKeys": [ - { - "name": "createdAlarmsCountHourly", - "type": "timeseries", - "label": "{i18n:api-usage.alarms-created}", - "color": "#d35a00", - "settings": { - "showInLegend": true, - "dataHiddenByDefault": false, - "type": "bar", - "lineSettings": { - "showLine": true, - "step": false, - "stepType": "start", - "smooth": false, - "lineType": "solid", - "lineWidth": 2, - "showPoints": false, - "showPointLabel": false, - "pointLabelPosition": "top", - "pointLabelFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "pointLabelColor": "rgba(0, 0, 0, 0.76)", - "pointShape": "emptyCircle", - "pointSize": 4, - "fillAreaSettings": { - "type": "none", - "opacity": 0.4, - "gradient": { - "start": 100, - "end": 0 - } - } - }, - "barSettings": { - "showBorder": false, - "borderWidth": 2, - "borderRadius": 0, - "showLabel": false, - "labelPosition": "top", - "labelFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.76)", - "backgroundSettings": { - "type": "none", - "opacity": 0.4, - "gradient": { - "start": 100, - "end": 0 - } - } - } - }, - "_hash": 0.0661644137210089, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": null, - "postFuncBody": null, - "aggregationType": null - } - ], - "alarmFilterConfig": { - "statusList": [ - "ACTIVE" - ] - } - } - ], - "timewindow": { - "hideInterval": false, - "hideLastInterval": false, - "hideQuickInterval": false, - "hideAggregation": false, - "hideAggInterval": false, - "hideTimezone": false, - "selectedTab": 0, - "realtime": { - "realtimeType": 0, - "timewindowMs": 86400000, - "quickInterval": "CURRENT_DAY", - "interval": 300000 - }, - "aggregation": { - "type": "NONE", - "limit": 50000 - }, - "timezone": null - }, - "showTitle": true, - "backgroundColor": "#FFFFFF", - "color": "rgba(0, 0, 0, 0.87)", - "padding": "0px", - "settings": { - "yAxes": { - "default": { - "units": null, - "decimals": 0, - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "left", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)", - "id": "default", - "order": 0, - "min": null, - "max": null - } - }, - "thresholds": [], - "dataZoom": false, - "stack": false, - "xAxis": { - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "bottom", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 10, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)" - }, - "noAggregationBarWidthSettings": { - "strategy": "group", - "groupWidth": { - "relative": false, - "relativeWidth": 2, - "absoluteWidth": 3600000 - }, - "barWidth": { - "relative": true, - "relativeWidth": 2, - "absoluteWidth": 1000 - } - }, - "showLegend": true, - "legendLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "legendLabelColor": "rgba(0, 0, 0, 0.76)", - "legendConfig": { - "direction": "column", - "position": "bottom", - "sortDataKeys": false, - "showMin": false, - "showMax": false, - "showAvg": false, - "showTotal": true, - "showLatest": false - }, - "showTooltip": true, - "tooltipTrigger": "axis", - "tooltipValueFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "500", - "lineHeight": "16px" - }, - "tooltipValueColor": "rgba(0, 0, 0, 0.76)", - "tooltipShowDate": true, - "tooltipDateFormat": { - "format": "yyyy-MM-dd HH:mm:ss", - "lastUpdateAgo": false, - "custom": false - }, - "tooltipDateFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "tooltipDateColor": "rgba(0, 0, 0, 0.76)", - "tooltipDateInterval": true, - "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", - "tooltipBackgroundBlur": 4, - "animation": { - "animation": true, - "animationThreshold": 2000, - "animationDuration": 1000, - "animationEasing": "cubicOut", - "animationDelay": 0, - "animationDurationUpdate": 300, - "animationEasingUpdate": "cubicOut", - "animationDelayUpdate": 0 - }, - "background": { - "type": "color", - "color": "#fff", - "overlay": { - "enabled": false, - "color": "rgba(255,255,255,0.72)", - "blur": 3 - } - } - }, - "title": "{i18n:api-usage.alarms-created-hourly-activity}", - "dropShadow": true, - "enableFullscreen": true, - "titleStyle": null, - "configMode": "basic", - "actions": { - "headerButton": [ - { - "name": "{i18n:api-usage.view-details}", - "icon": "insert_chart", - "type": "openDashboardState", - "targetDashboardStateId": "alarms_created", - "setEntityId": false, - "stateEntityParamName": null, - "openInSeparateDialog": null, - "dialogTitle": null, - "dialogHideDashboardToolbar": true, - "dialogWidth": null, - "dialogHeight": null, - "openRightLayout": false, - "id": "371882f9-ea23-3abc-fca8-9449c5dfdd6b" - } - ] - }, - "showTitleIcon": false, - "titleIcon": "thermostat", - "iconColor": "#1F6BDD", - "useDashboardTimewindow": false, - "displayTimewindow": true, - "titleFont": { - "size": 16, - "sizeUnit": "px", - "family": "Roboto", - "weight": "500", - "style": "normal", - "lineHeight": "24px" - }, - "titleColor": "rgba(0, 0, 0, 0.87)", - "titleTooltip": "", - "widgetStyle": {}, - "widgetCss": "", - "pageSize": 1024, - "units": "", - "decimals": null, - "noDataDisplayMessage": "", - "timewindowStyle": { - "showIcon": false, - "iconSize": "24px", - "icon": null, - "iconPosition": "left", - "font": { - "size": 12, - "sizeUnit": "px", - "family": "Roboto", - "weight": "400", - "style": "normal", - "lineHeight": "16px" - }, - "color": "rgba(0, 0, 0, 0.38)", - "displayTypePrefix": true - }, - "margin": "0px", - "borderRadius": "0px", - "iconSize": "0px" - }, - "row": 0, - "col": 0, - "id": "5cebd4f1-ff6e-62f9-025c-8e7583c3d66a" - }, - "bc0c8840-a9b5-5583-de7b-9e9450f5d8fe": { - "typeFullFqn": "system.time_series_chart", - "type": "timeseries", - "sizeX": 8, - "sizeY": 5, - "config": { - "datasources": [ - { - "type": "entity", - "name": null, - "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", - "filterId": null, - "dataKeys": [ - { - "name": "emailCountHourly", - "type": "timeseries", - "label": "{i18n:api-usage.email-messages}", - "color": "#4caf50", - "settings": { - "showInLegend": true, - "dataHiddenByDefault": false, - "type": "bar", - "lineSettings": { - "showLine": true, - "step": false, - "stepType": "start", - "smooth": false, - "lineType": "solid", - "lineWidth": 2, - "showPoints": false, - "showPointLabel": false, - "pointLabelPosition": "top", - "pointLabelFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "pointLabelColor": "rgba(0, 0, 0, 0.76)", - "pointShape": "emptyCircle", - "pointSize": 4, - "fillAreaSettings": { - "type": "none", - "opacity": 0.4, - "gradient": { - "start": 100, - "end": 0 - } - } - }, - "barSettings": { - "showBorder": false, - "borderWidth": 2, - "borderRadius": 0, - "showLabel": false, - "labelPosition": "top", - "labelFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.76)", - "backgroundSettings": { - "type": "none", - "opacity": 0.4, - "gradient": { - "start": 100, - "end": 0 - } - } - } - }, - "_hash": 0.1348755140779876, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": null, - "postFuncBody": null, - "aggregationType": null - }, - { - "name": "smsCountHourly", - "type": "timeseries", - "label": "{i18n:api-usage.sms-messages}", - "color": "#f36021", - "settings": { - "showInLegend": true, - "dataHiddenByDefault": false, - "type": "bar", - "lineSettings": { - "showLine": true, - "step": false, - "stepType": "start", - "smooth": false, - "lineType": "solid", - "lineWidth": 2, - "showPoints": false, - "showPointLabel": false, - "pointLabelPosition": "top", - "pointLabelFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "pointLabelColor": "rgba(0, 0, 0, 0.76)", - "pointShape": "emptyCircle", - "pointSize": 4, - "fillAreaSettings": { - "type": "none", - "opacity": 0.4, - "gradient": { - "start": 100, - "end": 0 - } - } - }, - "barSettings": { - "showBorder": false, - "borderWidth": 2, - "borderRadius": 0, - "showLabel": false, - "labelPosition": "top", - "labelFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.76)", - "backgroundSettings": { - "type": "none", - "opacity": 0.4, - "gradient": { - "start": 100, - "end": 0 - } - } - } - }, - "_hash": 0.0661644137210089, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": null, - "postFuncBody": null, - "aggregationType": null - } - ], - "alarmFilterConfig": { - "statusList": [ - "ACTIVE" - ] - } - } - ], - "timewindow": { - "hideInterval": false, - "hideLastInterval": false, - "hideQuickInterval": false, - "hideAggregation": false, - "hideAggInterval": false, - "hideTimezone": false, - "selectedTab": 0, - "realtime": { - "realtimeType": 0, - "timewindowMs": 86400000, - "quickInterval": "CURRENT_DAY", - "interval": 300000 - }, - "aggregation": { - "type": "NONE", - "limit": 50000 - }, - "timezone": null - }, - "showTitle": true, - "backgroundColor": "#FFFFFF", - "color": "rgba(0, 0, 0, 0.87)", - "padding": "0px", - "settings": { - "yAxes": { - "default": { - "units": null, - "decimals": 0, - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "left", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)", - "id": "default", - "order": 0, - "min": null, - "max": null - } - }, - "thresholds": [], - "dataZoom": false, - "stack": false, - "xAxis": { - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "bottom", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 10, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)" - }, - "noAggregationBarWidthSettings": { - "strategy": "group", - "groupWidth": { - "relative": false, - "relativeWidth": 2, - "absoluteWidth": 3600000 - }, - "barWidth": { - "relative": true, - "relativeWidth": 2, - "absoluteWidth": 1000 - } - }, - "showLegend": true, - "legendLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "legendLabelColor": "rgba(0, 0, 0, 0.76)", - "legendConfig": { - "direction": "column", - "position": "bottom", - "sortDataKeys": false, - "showMin": false, - "showMax": false, - "showAvg": false, - "showTotal": true, - "showLatest": false - }, - "showTooltip": true, - "tooltipTrigger": "axis", - "tooltipValueFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "500", - "lineHeight": "16px" - }, - "tooltipValueColor": "rgba(0, 0, 0, 0.76)", - "tooltipShowDate": true, - "tooltipDateFormat": { - "format": "yyyy-MM-dd HH:mm:ss", - "lastUpdateAgo": false, - "custom": false - }, - "tooltipDateFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "tooltipDateColor": "rgba(0, 0, 0, 0.76)", - "tooltipDateInterval": true, - "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", - "tooltipBackgroundBlur": 4, - "animation": { - "animation": true, - "animationThreshold": 2000, - "animationDuration": 1000, - "animationEasing": "cubicOut", - "animationDelay": 0, - "animationDurationUpdate": 300, - "animationEasingUpdate": "cubicOut", - "animationDelayUpdate": 0 - }, - "background": { - "type": "color", - "color": "#fff", - "overlay": { - "enabled": false, - "color": "rgba(255,255,255,0.72)", - "blur": 3 - } - } - }, - "title": "{i18n:api-usage.notifications-hourly-activity}", - "dropShadow": true, - "enableFullscreen": true, - "titleStyle": null, - "configMode": "basic", - "actions": { - "headerButton": [ - { - "name": "{i18n:api-usage.view-details}", - "icon": "insert_chart", - "type": "openDashboardState", - "targetDashboardStateId": "notifications", - "setEntityId": false, - "stateEntityParamName": null, - "openInSeparateDialog": null, - "dialogTitle": null, - "dialogHideDashboardToolbar": true, - "dialogWidth": null, - "dialogHeight": null, - "openRightLayout": false, - "id": "49aefac0-ec5e-d6f3-f39c-8744759f4b19" - } - ] - }, - "showTitleIcon": false, - "titleIcon": "thermostat", - "iconColor": "#1F6BDD", - "useDashboardTimewindow": false, - "displayTimewindow": true, - "titleFont": { - "size": 16, - "sizeUnit": "px", - "family": "Roboto", - "weight": "500", - "style": "normal", - "lineHeight": "24px" - }, - "titleColor": "rgba(0, 0, 0, 0.87)", - "titleTooltip": "", - "widgetStyle": {}, - "widgetCss": "", - "pageSize": 1024, - "units": "", - "decimals": null, - "noDataDisplayMessage": "", - "timewindowStyle": { - "showIcon": false, - "iconSize": "24px", - "icon": null, - "iconPosition": "left", - "font": { - "size": 12, - "sizeUnit": "px", - "family": "Roboto", - "weight": "400", - "style": "normal", - "lineHeight": "16px" - }, - "color": "rgba(0, 0, 0, 0.38)", - "displayTypePrefix": true - }, - "margin": "0px", - "borderRadius": "0px", - "iconSize": "0px" - }, - "row": 0, - "col": 0, - "id": "bc0c8840-a9b5-5583-de7b-9e9450f5d8fe" - }, - "0b091dc3-eec3-847e-d0ad-fdf12d474e7a": { - "typeFullFqn": "system.time_series_chart", - "type": "timeseries", - "sizeX": 8, - "sizeY": 5, - "config": { - "datasources": [ - { - "type": "entity", - "name": null, - "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", - "filterId": null, - "dataKeys": [ - { - "name": "transportMsgCountHourly", - "type": "timeseries", - "label": "{i18n:api-usage.transport-messages}", - "color": "#2196f3", - "settings": { - "excludeFromStacking": false, - "hideDataByDefault": false, - "disableDataHiding": false, - "removeFromLegend": false, - "showLines": false, - "fillLines": false, - "showPoints": false, - "showPointShape": "circle", - "pointShapeFormatter": "", - "showPointsLineWidth": 5, - "showPointsRadius": 3, - "showSeparateAxis": false, - "axisPosition": "left", - "thresholds": [ - { - "thresholdValueSource": "predefinedValue" - } - ], - "comparisonSettings": { - "showValuesForComparison": true - }, - "type": "bar" - }, - "_hash": 0.0661644137210089, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": null, - "postFuncBody": null - }, - { - "name": "transportDataPointsCountHourly", - "type": "timeseries", - "label": "{i18n:api-usage.transport-data-points}", - "color": "#4caf50", - "settings": { - "excludeFromStacking": false, - "hideDataByDefault": false, - "disableDataHiding": false, - "removeFromLegend": false, - "showLines": false, - "fillLines": false, - "showPoints": false, - "showPointShape": "circle", - "pointShapeFormatter": "", - "showPointsLineWidth": 5, - "showPointsRadius": 3, - "showSeparateAxis": false, - "axisPosition": "left", - "thresholds": [ - { - "thresholdValueSource": "predefinedValue" - } - ], - "comparisonSettings": { - "showValuesForComparison": true - }, - "type": "bar" - }, - "_hash": 0.46849996721308895, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": null, - "postFuncBody": null - } - ] - } - ], - "timewindow": { - "hideInterval": false, - "hideLastInterval": false, - "hideQuickInterval": false, - "hideAggregation": false, - "hideAggInterval": false, - "hideTimezone": false, - "selectedTab": 1, - "history": { - "historyType": 0, - "timewindowMs": 2592000000, - "interval": 86400000, - "fixedTimewindow": { - "startTimeMs": 1709729389667, - "endTimeMs": 1709815789667 - }, - "quickInterval": "CURRENT_DAY" - }, - "aggregation": { - "type": "SUM", - "limit": 25000 - }, - "timezone": null - }, - "showTitle": true, - "backgroundColor": "#FFFFFF", - "color": "rgba(0, 0, 0, 0.87)", - "padding": "0px", - "settings": { - "yAxes": { - "default": { - "units": null, - "decimals": 0, - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "left", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)", - "id": "default", - "order": 0, - "min": null, - "max": null - } - }, - "thresholds": [], - "dataZoom": false, - "stack": false, - "xAxis": { - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "bottom", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 10, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)" - }, - "noAggregationBarWidthSettings": { - "strategy": "group", - "groupWidth": { - "relative": false, - "relativeWidth": 2, - "absoluteWidth": 1800000 - }, - "barWidth": { - "relative": true, - "relativeWidth": 2, - "absoluteWidth": 1000 - } - }, - "showLegend": true, - "legendLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "legendLabelColor": "rgba(0, 0, 0, 0.76)", - "legendConfig": { - "direction": "column", - "position": "bottom", - "sortDataKeys": false, - "showMin": false, - "showMax": false, - "showAvg": false, - "showTotal": true, - "showLatest": false - }, - "showTooltip": true, - "tooltipTrigger": "axis", - "tooltipValueFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "500", - "lineHeight": "16px" - }, - "tooltipValueColor": "rgba(0, 0, 0, 0.76)", - "tooltipShowDate": true, - "tooltipDateFormat": { - "format": "yyyy-MM-dd HH:mm:ss", - "lastUpdateAgo": false, - "custom": false - }, - "tooltipDateFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "tooltipDateColor": "rgba(0, 0, 0, 0.76)", - "tooltipDateInterval": true, - "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", - "tooltipBackgroundBlur": 4, - "animation": { - "animation": true, - "animationThreshold": 2000, - "animationDuration": 1000, - "animationEasing": "cubicOut", - "animationDelay": 0, - "animationDurationUpdate": 300, - "animationEasingUpdate": "cubicOut", - "animationDelayUpdate": 0 - }, - "background": { - "type": "color", - "color": "#fff", - "overlay": { - "enabled": false, - "color": "rgba(255,255,255,0.72)", - "blur": 3 - } - } - }, - "title": "{i18n:api-usage.transport-daily-activity}", - "dropShadow": true, - "enableFullscreen": true, - "titleStyle": null, - "configMode": "basic", - "actions": {}, - "showTitleIcon": false, - "titleIcon": "thermostat", - "iconColor": "#1F6BDD", - "useDashboardTimewindow": false, - "displayTimewindow": true, - "titleFont": { - "size": 16, - "sizeUnit": "px", - "family": "Roboto", - "weight": "500", - "style": "normal", - "lineHeight": "24px" - }, - "titleColor": "rgba(0, 0, 0, 0.87)", - "titleTooltip": "", - "widgetStyle": {}, - "widgetCss": "", - "pageSize": 1024, - "units": "", - "decimals": null, - "noDataDisplayMessage": "", - "timewindowStyle": { - "showIcon": false, - "iconSize": "24px", - "icon": null, - "iconPosition": "left", - "font": { - "size": 12, - "sizeUnit": "px", - "family": "Roboto", - "weight": "400", - "style": "normal", - "lineHeight": "16px" - }, - "color": "rgba(0, 0, 0, 0.38)", - "displayTypePrefix": true - }, - "margin": "0px", - "borderRadius": "0px", - "iconSize": "0px" - }, - "row": 0, - "col": 0, - "id": "0b091dc3-eec3-847e-d0ad-fdf12d474e7a" - }, - "536d7104-49f8-fde6-5827-61b8419f15ec": { - "typeFullFqn": "system.time_series_chart", - "type": "timeseries", - "sizeX": 8, - "sizeY": 5, - "config": { - "datasources": [ - { - "type": "entity", - "name": null, - "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", - "filterId": null, - "dataKeys": [ - { - "name": "transportMsgCount", - "type": "timeseries", - "label": "{i18n:api-usage.transport-messages}", - "color": "#2196f3", - "settings": { - "excludeFromStacking": false, - "hideDataByDefault": false, - "disableDataHiding": false, - "removeFromLegend": false, - "showLines": false, - "fillLines": false, - "showPoints": false, - "showPointShape": "circle", - "pointShapeFormatter": "", - "showPointsLineWidth": 5, - "showPointsRadius": 3, - "showSeparateAxis": false, - "axisPosition": "left", - "thresholds": [ - { - "thresholdValueSource": "predefinedValue" - } - ], - "comparisonSettings": { - "showValuesForComparison": true - }, - "type": "bar" - }, - "_hash": 0.0661644137210089, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": null, - "postFuncBody": null, - "aggregationType": null - }, - { - "name": "transportDataPointsCount", - "type": "timeseries", - "label": "{i18n:api-usage.transport-data-points}", - "color": "#4caf50", - "settings": { - "excludeFromStacking": false, - "hideDataByDefault": false, - "disableDataHiding": false, - "removeFromLegend": false, - "showLines": false, - "fillLines": false, - "showPoints": false, - "showPointShape": "circle", - "pointShapeFormatter": "", - "showPointsLineWidth": 5, - "showPointsRadius": 3, - "showSeparateAxis": false, - "axisPosition": "left", - "thresholds": [ - { - "thresholdValueSource": "predefinedValue" - } - ], - "comparisonSettings": { - "showValuesForComparison": true - }, - "type": "bar" - }, - "_hash": 0.46849996721308895, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": null, - "postFuncBody": null, - "aggregationType": null - } - ], - "alarmFilterConfig": { - "statusList": [ - "ACTIVE" - ] - } - } - ], - "timewindow": { - "hideInterval": false, - "hideLastInterval": false, - "hideQuickInterval": false, - "hideAggregation": false, - "hideAggInterval": false, - "hideTimezone": false, - "selectedTab": 1, - "history": { - "historyType": 0, - "timewindowMs": 31536000000, - "interval": 86400000, - "fixedTimewindow": { - "startTimeMs": 1709729389667, - "endTimeMs": 1709815789667 - }, - "quickInterval": "CURRENT_DAY" - }, - "aggregation": { - "type": "NONE", - "limit": 1000 - }, - "timezone": null - }, - "showTitle": true, - "backgroundColor": "#FFFFFF", - "color": "rgba(0, 0, 0, 0.87)", - "padding": "0px", - "settings": { - "yAxes": { - "default": { - "units": null, - "decimals": 0, - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "left", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)", - "id": "default", - "order": 0, - "min": null, - "max": null - } - }, - "thresholds": [], - "dataZoom": false, - "stack": false, - "xAxis": { - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "bottom", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 10, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)" - }, - "noAggregationBarWidthSettings": { - "strategy": "group", - "groupWidth": { - "relative": true, - "relativeWidth": 6, - "absoluteWidth": 900000000 - }, - "barWidth": { - "relative": true, - "relativeWidth": 2, - "absoluteWidth": 1000 - } - }, - "showLegend": true, - "legendLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "legendLabelColor": "rgba(0, 0, 0, 0.76)", - "legendConfig": { - "direction": "column", - "position": "bottom", - "sortDataKeys": false, - "showMin": false, - "showMax": false, - "showAvg": false, - "showTotal": true, - "showLatest": false - }, - "showTooltip": true, - "tooltipTrigger": "axis", - "tooltipValueFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "500", - "lineHeight": "16px" - }, - "tooltipValueColor": "rgba(0, 0, 0, 0.76)", - "tooltipShowDate": true, - "tooltipDateFormat": { - "format": "yyyy-MM-dd HH:mm:ss", - "lastUpdateAgo": false, - "custom": false - }, - "tooltipDateFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "tooltipDateColor": "rgba(0, 0, 0, 0.76)", - "tooltipDateInterval": true, - "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", - "tooltipBackgroundBlur": 4, - "animation": { - "animation": true, - "animationThreshold": 2000, - "animationDuration": 1000, - "animationEasing": "cubicOut", - "animationDelay": 0, - "animationDurationUpdate": 300, - "animationEasingUpdate": "cubicOut", - "animationDelayUpdate": 0 - }, - "background": { - "type": "color", - "color": "#fff", - "overlay": { - "enabled": false, - "color": "rgba(255,255,255,0.72)", - "blur": 3 - } - } - }, - "title": "{i18n:api-usage.transport-daily-activity}", - "dropShadow": true, - "enableFullscreen": true, - "titleStyle": null, - "configMode": "basic", - "actions": {}, - "showTitleIcon": false, - "titleIcon": "thermostat", - "iconColor": "#1F6BDD", - "useDashboardTimewindow": false, - "displayTimewindow": true, - "titleFont": { - "size": 16, - "sizeUnit": "px", - "family": "Roboto", - "weight": "500", - "style": "normal", - "lineHeight": "24px" - }, - "titleColor": "rgba(0, 0, 0, 0.87)", - "titleTooltip": "", - "widgetStyle": {}, - "widgetCss": "", - "pageSize": 1024, - "units": "", - "decimals": null, - "noDataDisplayMessage": "", - "timewindowStyle": { - "showIcon": false, - "iconSize": "24px", - "icon": null, - "iconPosition": "left", - "font": { - "size": 12, - "sizeUnit": "px", - "family": "Roboto", - "weight": "400", - "style": "normal", - "lineHeight": "16px" - }, - "color": "rgba(0, 0, 0, 0.38)", - "displayTypePrefix": true - }, - "margin": "0px", - "borderRadius": "0px", - "iconSize": "0px" - }, - "row": 0, - "col": 0, - "id": "536d7104-49f8-fde6-5827-61b8419f15ec" - }, - "c77e417c-ad9d-8e23-3ea1-c75edd653bc0": { - "typeFullFqn": "system.time_series_chart", - "type": "timeseries", - "sizeX": 8, - "sizeY": 5, - "config": { - "datasources": [ - { - "type": "entity", - "name": null, - "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", - "filterId": null, - "dataKeys": [ - { - "name": "ruleEngineExecutionCountHourly", - "type": "timeseries", - "label": "{i18n:api-usage.rule-engine-executions}", - "color": "#ab00ff", - "settings": { - "excludeFromStacking": false, - "hideDataByDefault": false, - "disableDataHiding": false, - "removeFromLegend": false, - "showLines": false, - "fillLines": false, - "showPoints": false, - "showPointShape": "circle", - "pointShapeFormatter": "", - "showPointsLineWidth": 5, - "showPointsRadius": 3, - "showSeparateAxis": false, - "axisPosition": "left", - "thresholds": [ - { - "thresholdValueSource": "predefinedValue" - } - ], - "comparisonSettings": { - "showValuesForComparison": true - }, - "type": "bar" - }, - "_hash": 0.0661644137210089, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": null, - "postFuncBody": null - } - ] - } - ], - "timewindow": { - "hideInterval": false, - "hideLastInterval": false, - "hideQuickInterval": false, - "hideAggregation": false, - "hideAggInterval": false, - "hideTimezone": false, - "selectedTab": 1, - "history": { - "historyType": 0, - "timewindowMs": 2592000000, - "interval": 86400000, - "fixedTimewindow": { - "startTimeMs": 1709729900300, - "endTimeMs": 1709816300300 - }, - "quickInterval": "CURRENT_DAY" - }, - "aggregation": { - "type": "SUM", - "limit": 25000 - }, - "timezone": null - }, - "showTitle": true, - "backgroundColor": "#FFFFFF", - "color": "rgba(0, 0, 0, 0.87)", - "padding": "0px", - "settings": { - "yAxes": { - "default": { - "units": null, - "decimals": 0, - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "left", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)", - "id": "default", - "order": 0, - "min": null, - "max": null - } - }, - "thresholds": [], - "dataZoom": false, - "stack": false, - "xAxis": { - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "bottom", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 10, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)" - }, - "noAggregationBarWidthSettings": { - "strategy": "group", - "groupWidth": { - "relative": false, - "relativeWidth": 2, - "absoluteWidth": 1800000 - }, - "barWidth": { - "relative": true, - "relativeWidth": 2, - "absoluteWidth": 1000 - } - }, - "showLegend": true, - "legendLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "legendLabelColor": "rgba(0, 0, 0, 0.76)", - "legendConfig": { - "direction": "column", - "position": "bottom", - "sortDataKeys": false, - "showMin": false, - "showMax": false, - "showAvg": false, - "showTotal": true, - "showLatest": false - }, - "showTooltip": true, - "tooltipTrigger": "axis", - "tooltipValueFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "500", - "lineHeight": "16px" - }, - "tooltipValueColor": "rgba(0, 0, 0, 0.76)", - "tooltipShowDate": true, - "tooltipDateFormat": { - "format": "yyyy-MM-dd HH:mm:ss", - "lastUpdateAgo": false, - "custom": false - }, - "tooltipDateFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "tooltipDateColor": "rgba(0, 0, 0, 0.76)", - "tooltipDateInterval": true, - "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", - "tooltipBackgroundBlur": 4, - "animation": { - "animation": true, - "animationThreshold": 2000, - "animationDuration": 1000, - "animationEasing": "cubicOut", - "animationDelay": 0, - "animationDurationUpdate": 300, - "animationEasingUpdate": "cubicOut", - "animationDelayUpdate": 0 - }, - "background": { - "type": "color", - "color": "#fff", - "overlay": { - "enabled": false, - "color": "rgba(255,255,255,0.72)", - "blur": 3 - } - } - }, - "title": "{i18n:api-usage.rule-engine-daily-activity}", - "dropShadow": true, - "enableFullscreen": true, - "titleStyle": null, - "configMode": "basic", - "actions": {}, - "showTitleIcon": false, - "titleIcon": "thermostat", - "iconColor": "#1F6BDD", - "useDashboardTimewindow": false, - "displayTimewindow": true, - "titleFont": { - "size": 16, - "sizeUnit": "px", - "family": "Roboto", - "weight": "500", - "style": "normal", - "lineHeight": "24px" - }, - "titleColor": "rgba(0, 0, 0, 0.87)", - "titleTooltip": "", - "widgetStyle": {}, - "widgetCss": "", - "pageSize": 1024, - "units": "", - "decimals": null, - "noDataDisplayMessage": "", - "timewindowStyle": { - "showIcon": false, - "iconSize": "24px", - "icon": null, - "iconPosition": "left", - "font": { - "size": 12, - "sizeUnit": "px", - "family": "Roboto", - "weight": "400", - "style": "normal", - "lineHeight": "16px" - }, - "color": "rgba(0, 0, 0, 0.38)", - "displayTypePrefix": true - }, - "margin": "0px", - "borderRadius": "0px", - "iconSize": "0px" - }, - "row": 0, - "col": 0, - "id": "c77e417c-ad9d-8e23-3ea1-c75edd653bc0" - }, - "870904d2-d2e1-a1b9-ce56-b03fd47259b5": { - "typeFullFqn": "system.time_series_chart", - "type": "timeseries", - "sizeX": 8, - "sizeY": 5, - "config": { - "datasources": [ - { - "type": "entity", - "name": null, - "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", - "filterId": null, - "dataKeys": [ - { - "name": "ruleEngineExecutionCount", - "type": "timeseries", - "label": "{i18n:api-usage.rule-engine-executions}", - "color": "#ab00ff", - "settings": { - "excludeFromStacking": false, - "hideDataByDefault": false, - "disableDataHiding": false, - "removeFromLegend": false, - "showLines": false, - "fillLines": false, - "showPoints": false, - "showPointShape": "circle", - "pointShapeFormatter": "", - "showPointsLineWidth": 5, - "showPointsRadius": 3, - "showSeparateAxis": false, - "axisPosition": "left", - "thresholds": [ - { - "thresholdValueSource": "predefinedValue" - } - ], - "comparisonSettings": { - "showValuesForComparison": true - }, - "type": "bar" - }, - "_hash": 0.0661644137210089, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": null, - "postFuncBody": null - } - ] - } - ], - "timewindow": { - "hideInterval": false, - "hideAggregation": false, - "hideAggInterval": false, - "selectedTab": 1, - "history": { - "historyType": 0, - "timewindowMs": 31536000000, - "interval": 1000 - }, - "aggregation": { - "type": "NONE", - "limit": 1000 - } - }, - "showTitle": true, - "backgroundColor": "#FFFFFF", - "color": "rgba(0, 0, 0, 0.87)", - "padding": "0px", - "settings": { - "yAxes": { - "default": { - "units": null, - "decimals": 0, - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "left", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)", - "id": "default", - "order": 0, - "min": null, - "max": null - } - }, - "thresholds": [], - "dataZoom": false, - "stack": false, - "xAxis": { - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "bottom", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 10, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)" - }, - "noAggregationBarWidthSettings": { - "strategy": "group", - "groupWidth": { - "relative": true, - "relativeWidth": 6, - "absoluteWidth": 900000000 - }, - "barWidth": { - "relative": true, - "relativeWidth": 2, - "absoluteWidth": 1000 - } - }, - "showLegend": true, - "legendLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "legendLabelColor": "rgba(0, 0, 0, 0.76)", - "legendConfig": { - "direction": "column", - "position": "bottom", - "sortDataKeys": false, - "showMin": false, - "showMax": false, - "showAvg": false, - "showTotal": true, - "showLatest": false - }, - "showTooltip": true, - "tooltipTrigger": "axis", - "tooltipValueFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "500", - "lineHeight": "16px" - }, - "tooltipValueColor": "rgba(0, 0, 0, 0.76)", - "tooltipShowDate": true, - "tooltipDateFormat": { - "format": "yyyy-MM-dd HH:mm:ss", - "lastUpdateAgo": false, - "custom": false - }, - "tooltipDateFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "tooltipDateColor": "rgba(0, 0, 0, 0.76)", - "tooltipDateInterval": true, - "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", - "tooltipBackgroundBlur": 4, - "animation": { - "animation": true, - "animationThreshold": 2000, - "animationDuration": 1000, - "animationEasing": "cubicOut", - "animationDelay": 0, - "animationDurationUpdate": 300, - "animationEasingUpdate": "cubicOut", - "animationDelayUpdate": 0 - }, - "background": { - "type": "color", - "color": "#fff", - "overlay": { - "enabled": false, - "color": "rgba(255,255,255,0.72)", - "blur": 3 - } - } - }, - "title": "{i18n:api-usage.rule-engine-monthly-activity}", - "dropShadow": true, - "enableFullscreen": true, - "titleStyle": null, - "configMode": "basic", - "actions": {}, - "showTitleIcon": false, - "titleIcon": "thermostat", - "iconColor": "#1F6BDD", - "useDashboardTimewindow": false, - "displayTimewindow": true, - "titleFont": { - "size": 16, - "sizeUnit": "px", - "family": "Roboto", - "weight": "500", - "style": "normal", - "lineHeight": "24px" - }, - "titleColor": "rgba(0, 0, 0, 0.87)", - "titleTooltip": "", - "widgetStyle": {}, - "widgetCss": "", - "pageSize": 1024, - "units": "", - "decimals": null, - "noDataDisplayMessage": "", - "timewindowStyle": { - "showIcon": false, - "iconSize": "24px", - "icon": null, - "iconPosition": "left", - "font": { - "size": 12, - "sizeUnit": "px", - "family": "Roboto", - "weight": "400", - "style": "normal", - "lineHeight": "16px" - }, - "color": "rgba(0, 0, 0, 0.38)", - "displayTypePrefix": true - }, - "margin": "0px", - "borderRadius": "0px", - "iconSize": "0px" - }, - "row": 0, - "col": 0, - "id": "870904d2-d2e1-a1b9-ce56-b03fd47259b5" - }, - "c66e5060-57fd-11e7-6616-65b82c294ac2": { - "typeFullFqn": "system.time_series_chart", - "type": "timeseries", - "sizeX": 8, - "sizeY": 5, - "config": { - "datasources": [ - { - "type": "entity", - "name": null, - "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", - "filterId": null, - "dataKeys": [ - { - "name": "jsExecutionCountHourly", - "type": "timeseries", - "label": "{i18n:api-usage.javascript-executions}", - "color": "#ff9900", - "settings": { - "excludeFromStacking": false, - "hideDataByDefault": false, - "disableDataHiding": false, - "removeFromLegend": false, - "showLines": false, - "fillLines": false, - "showPoints": false, - "showPointShape": "circle", - "pointShapeFormatter": "", - "showPointsLineWidth": 5, - "showPointsRadius": 3, - "showSeparateAxis": false, - "axisPosition": "left", - "thresholds": [ - { - "thresholdValueSource": "predefinedValue" - } - ], - "comparisonSettings": { - "showValuesForComparison": true - }, - "type": "bar" - }, - "_hash": 0.0661644137210089, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": null, - "postFuncBody": null - }, - { - "name": "tbelExecutionCountHourly", - "type": "timeseries", - "label": "{i18n:api-usage.tbel-executions}", - "color": "#4caf50", - "settings": { - "type": "bar" - }, - "_hash": 0.5212969314724616, - "aggregationType": null, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": null, - "postFuncBody": null - } - ] - } - ], - "timewindow": { - "hideInterval": false, - "hideAggregation": false, - "hideAggInterval": false, - "selectedTab": 1, - "history": { - "historyType": 0, - "timewindowMs": 2592000000, - "interval": 86400000 - }, - "aggregation": { - "type": "SUM", - "limit": 1000 - } - }, - "showTitle": true, - "backgroundColor": "#FFFFFF", - "color": "rgba(0, 0, 0, 0.87)", - "padding": "0px", - "settings": { - "yAxes": { - "default": { - "units": null, - "decimals": 0, - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "left", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)", - "id": "default", - "order": 0, - "min": null, - "max": null - } - }, - "thresholds": [], - "dataZoom": false, - "stack": false, - "xAxis": { - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "bottom", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 10, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)" - }, - "noAggregationBarWidthSettings": { - "strategy": "group", - "groupWidth": { - "relative": false, - "relativeWidth": 2, - "absoluteWidth": 1800000 - }, - "barWidth": { - "relative": true, - "relativeWidth": 2, - "absoluteWidth": 1000 - } - }, - "showLegend": true, - "legendLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "legendLabelColor": "rgba(0, 0, 0, 0.76)", - "legendConfig": { - "direction": "column", - "position": "bottom", - "sortDataKeys": false, - "showMin": false, - "showMax": false, - "showAvg": false, - "showTotal": true, - "showLatest": false - }, - "showTooltip": true, - "tooltipTrigger": "axis", - "tooltipValueFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "500", - "lineHeight": "16px" - }, - "tooltipValueColor": "rgba(0, 0, 0, 0.76)", - "tooltipShowDate": true, - "tooltipDateFormat": { - "format": "yyyy-MM-dd HH:mm:ss", - "lastUpdateAgo": false, - "custom": false - }, - "tooltipDateFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "tooltipDateColor": "rgba(0, 0, 0, 0.76)", - "tooltipDateInterval": true, - "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", - "tooltipBackgroundBlur": 4, - "animation": { - "animation": true, - "animationThreshold": 2000, - "animationDuration": 1000, - "animationEasing": "cubicOut", - "animationDelay": 0, - "animationDurationUpdate": 300, - "animationEasingUpdate": "cubicOut", - "animationDelayUpdate": 0 - }, - "background": { - "type": "color", - "color": "#fff", - "overlay": { - "enabled": false, - "color": "rgba(255,255,255,0.72)", - "blur": 3 - } - } - }, - "title": "{i18n:api-usage.scripts-daily-activity}", - "dropShadow": true, - "enableFullscreen": true, - "titleStyle": null, - "configMode": "basic", - "actions": {}, - "showTitleIcon": false, - "titleIcon": "thermostat", - "iconColor": "#1F6BDD", - "useDashboardTimewindow": false, - "displayTimewindow": true, - "titleFont": { - "size": 16, - "sizeUnit": "px", - "family": "Roboto", - "weight": "500", - "style": "normal", - "lineHeight": "24px" - }, - "titleColor": "rgba(0, 0, 0, 0.87)", - "titleTooltip": "", - "widgetStyle": {}, - "widgetCss": "", - "pageSize": 1024, - "units": "", - "decimals": null, - "noDataDisplayMessage": "", - "timewindowStyle": { - "showIcon": false, - "iconSize": "24px", - "icon": null, - "iconPosition": "left", - "font": { - "size": 12, - "sizeUnit": "px", - "family": "Roboto", - "weight": "400", - "style": "normal", - "lineHeight": "16px" - }, - "color": "rgba(0, 0, 0, 0.38)", - "displayTypePrefix": true - }, - "margin": "0px", - "borderRadius": "0px", - "iconSize": "0px" - }, - "row": 0, - "col": 0, - "id": "c66e5060-57fd-11e7-6616-65b82c294ac2" - }, - "d0e8603e-5d2e-9287-e2c6-8ccbe9c66806": { - "typeFullFqn": "system.time_series_chart", - "type": "timeseries", - "sizeX": 8, - "sizeY": 5, - "config": { - "datasources": [ - { - "type": "entity", - "name": null, - "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", - "filterId": null, - "dataKeys": [ - { - "name": "jsExecutionCount", - "type": "timeseries", - "label": "{i18n:api-usage.javascript-executions}", - "color": "#ff9900", - "settings": { - "excludeFromStacking": false, - "hideDataByDefault": false, - "disableDataHiding": false, - "removeFromLegend": false, - "showLines": false, - "fillLines": false, - "showPoints": false, - "showPointShape": "circle", - "pointShapeFormatter": "", - "showPointsLineWidth": 5, - "showPointsRadius": 3, - "showSeparateAxis": false, - "axisPosition": "left", - "thresholds": [ - { - "thresholdValueSource": "predefinedValue" - } - ], - "comparisonSettings": { - "showValuesForComparison": true - }, - "type": "bar" - }, - "_hash": 0.0661644137210089, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": null, - "postFuncBody": null - }, - { - "name": "tbelExecutionCount", - "type": "timeseries", - "label": "{i18n:api-usage.tbel-executions}", - "color": "#4caf50", - "settings": { - "type": "bar" - }, - "_hash": 0.49748239768082403, - "aggregationType": null, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": null, - "postFuncBody": null - } - ] - } - ], - "timewindow": { - "hideInterval": false, - "hideAggregation": false, - "hideAggInterval": false, - "selectedTab": 1, - "history": { - "historyType": 0, - "timewindowMs": 31536000000, - "interval": 1000 - }, - "aggregation": { - "type": "NONE", - "limit": 1000 - } - }, - "showTitle": true, - "backgroundColor": "#FFFFFF", - "color": "rgba(0, 0, 0, 0.87)", - "padding": "0px", - "settings": { - "yAxes": { - "default": { - "units": null, - "decimals": 0, - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "left", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)", - "id": "default", - "order": 0, - "min": null, - "max": null - } - }, - "thresholds": [], - "dataZoom": false, - "stack": false, - "xAxis": { - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "bottom", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 10, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)" - }, - "noAggregationBarWidthSettings": { - "strategy": "group", - "groupWidth": { - "relative": true, - "relativeWidth": 6, - "absoluteWidth": 900000000 - }, - "barWidth": { - "relative": false, - "relativeWidth": 2, - "absoluteWidth": 900000000 - } - }, - "showLegend": true, - "legendLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "legendLabelColor": "rgba(0, 0, 0, 0.76)", - "legendConfig": { - "direction": "column", - "position": "bottom", - "sortDataKeys": false, - "showMin": false, - "showMax": false, - "showAvg": false, - "showTotal": true, - "showLatest": false - }, - "showTooltip": true, - "tooltipTrigger": "axis", - "tooltipValueFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "500", - "lineHeight": "16px" - }, - "tooltipValueColor": "rgba(0, 0, 0, 0.76)", - "tooltipShowDate": true, - "tooltipDateFormat": { - "format": "yyyy-MM-dd HH:mm:ss", - "lastUpdateAgo": false, - "custom": false - }, - "tooltipDateFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "tooltipDateColor": "rgba(0, 0, 0, 0.76)", - "tooltipDateInterval": true, - "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", - "tooltipBackgroundBlur": 4, - "animation": { - "animation": true, - "animationThreshold": 2000, - "animationDuration": 1000, - "animationEasing": "cubicOut", - "animationDelay": 0, - "animationDurationUpdate": 300, - "animationEasingUpdate": "cubicOut", - "animationDelayUpdate": 0 - }, - "background": { - "type": "color", - "color": "#fff", - "overlay": { - "enabled": false, - "color": "rgba(255,255,255,0.72)", - "blur": 3 - } - } - }, - "title": "{i18n:api-usage.scripts-monthly-activity}", - "dropShadow": true, - "enableFullscreen": true, - "titleStyle": null, - "configMode": "basic", - "actions": {}, - "showTitleIcon": false, - "titleIcon": "thermostat", - "iconColor": "#1F6BDD", - "useDashboardTimewindow": false, - "displayTimewindow": true, - "titleFont": { - "size": 16, - "sizeUnit": "px", - "family": "Roboto", - "weight": "500", - "style": "normal", - "lineHeight": "24px" - }, - "titleColor": "rgba(0, 0, 0, 0.87)", - "titleTooltip": "", - "widgetStyle": {}, - "widgetCss": "", - "pageSize": 1024, - "units": "", - "decimals": null, - "noDataDisplayMessage": "", - "timewindowStyle": { - "showIcon": false, - "iconSize": "24px", - "icon": null, - "iconPosition": "left", - "font": { - "size": 12, - "sizeUnit": "px", - "family": "Roboto", - "weight": "400", - "style": "normal", - "lineHeight": "16px" - }, - "color": "rgba(0, 0, 0, 0.38)", - "displayTypePrefix": true - }, - "margin": "0px", - "borderRadius": "0px", - "iconSize": "0px" - }, - "row": 0, - "col": 0, - "id": "d0e8603e-5d2e-9287-e2c6-8ccbe9c66806" - }, - "7f4100d2-41be-4954-d353-1d45000dbbbb": { - "typeFullFqn": "system.time_series_chart", - "type": "timeseries", - "sizeX": 8, - "sizeY": 5, - "config": { - "datasources": [ - { - "type": "entity", - "name": null, - "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", - "filterId": null, - "dataKeys": [ - { - "name": "storageDataPointsCountHourly", - "type": "timeseries", - "label": "{i18n:api-usage.data-points-storage-days}", - "color": "#1039ee", - "settings": { - "excludeFromStacking": false, - "hideDataByDefault": false, - "disableDataHiding": false, - "removeFromLegend": false, - "showLines": false, - "fillLines": false, - "showPoints": false, - "showPointShape": "circle", - "pointShapeFormatter": "", - "showPointsLineWidth": 5, - "showPointsRadius": 3, - "showSeparateAxis": false, - "axisPosition": "left", - "thresholds": [ - { - "thresholdValueSource": "predefinedValue" - } - ], - "comparisonSettings": { - "showValuesForComparison": true - }, - "type": "bar" - }, - "_hash": 0.0661644137210089, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": null, - "postFuncBody": null - } - ] - } - ], - "timewindow": { - "hideInterval": false, - "hideAggregation": false, - "hideAggInterval": false, - "selectedTab": 1, - "history": { - "historyType": 0, - "timewindowMs": 2592000000, - "interval": 86400000 - }, - "aggregation": { - "type": "SUM", - "limit": 1000 - } - }, - "showTitle": true, - "backgroundColor": "#FFFFFF", - "color": "rgba(0, 0, 0, 0.87)", - "padding": "0px", - "settings": { - "yAxes": { - "default": { - "units": null, - "decimals": 0, - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "left", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)", - "id": "default", - "order": 0, - "min": null, - "max": null - } - }, - "thresholds": [], - "dataZoom": false, - "stack": false, - "xAxis": { - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "bottom", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 10, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)" - }, - "noAggregationBarWidthSettings": { - "strategy": "group", - "groupWidth": { - "relative": false, - "relativeWidth": 2, - "absoluteWidth": 1800000 - }, - "barWidth": { - "relative": true, - "relativeWidth": 2, - "absoluteWidth": 1000 - } - }, - "showLegend": true, - "legendLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "legendLabelColor": "rgba(0, 0, 0, 0.76)", - "legendConfig": { - "direction": "column", - "position": "bottom", - "sortDataKeys": false, - "showMin": false, - "showMax": false, - "showAvg": false, - "showTotal": true, - "showLatest": false - }, - "showTooltip": true, - "tooltipTrigger": "axis", - "tooltipValueFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "500", - "lineHeight": "16px" - }, - "tooltipValueColor": "rgba(0, 0, 0, 0.76)", - "tooltipShowDate": true, - "tooltipDateFormat": { - "format": "yyyy-MM-dd HH:mm:ss", - "lastUpdateAgo": false, - "custom": false - }, - "tooltipDateFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "tooltipDateColor": "rgba(0, 0, 0, 0.76)", - "tooltipDateInterval": true, - "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", - "tooltipBackgroundBlur": 4, - "animation": { - "animation": true, - "animationThreshold": 2000, - "animationDuration": 1000, - "animationEasing": "cubicOut", - "animationDelay": 0, - "animationDurationUpdate": 300, - "animationEasingUpdate": "cubicOut", - "animationDelayUpdate": 0 - }, - "background": { - "type": "color", - "color": "#fff", - "overlay": { - "enabled": false, - "color": "rgba(255,255,255,0.72)", - "blur": 3 - } - } - }, - "title": "{i18n:api-usage.telemetry-persistence-daily-activity}", - "dropShadow": true, - "enableFullscreen": true, - "titleStyle": null, - "configMode": "basic", - "actions": {}, - "showTitleIcon": false, - "titleIcon": "thermostat", - "iconColor": "#1F6BDD", - "useDashboardTimewindow": false, - "displayTimewindow": true, - "titleFont": { - "size": 16, - "sizeUnit": "px", - "family": "Roboto", - "weight": "500", - "style": "normal", - "lineHeight": "24px" - }, - "titleColor": "rgba(0, 0, 0, 0.87)", - "titleTooltip": "", - "widgetStyle": {}, - "widgetCss": "", - "pageSize": 1024, - "units": "", - "decimals": null, - "noDataDisplayMessage": "", - "timewindowStyle": { - "showIcon": false, - "iconSize": "24px", - "icon": null, - "iconPosition": "left", - "font": { - "size": 12, - "sizeUnit": "px", - "family": "Roboto", - "weight": "400", - "style": "normal", - "lineHeight": "16px" - }, - "color": "rgba(0, 0, 0, 0.38)", - "displayTypePrefix": true - }, - "margin": "0px", - "borderRadius": "0px", - "iconSize": "0px" - }, - "row": 0, - "col": 0, - "id": "7f4100d2-41be-4954-d353-1d45000dbbbb" - }, - "226ef8c9-8488-3664-21ac-0b6217336202": { - "typeFullFqn": "system.time_series_chart", - "type": "timeseries", - "sizeX": 8, - "sizeY": 5, - "config": { - "datasources": [ - { - "type": "entity", - "name": null, - "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", - "filterId": null, - "dataKeys": [ - { - "name": "storageDataPointsCount", - "type": "timeseries", - "label": "{i18n:api-usage.data-points-storage-days}", - "color": "#1039ee", - "settings": { - "excludeFromStacking": false, - "hideDataByDefault": false, - "disableDataHiding": false, - "removeFromLegend": false, - "showLines": false, - "fillLines": false, - "showPoints": false, - "showPointShape": "circle", - "pointShapeFormatter": "", - "showPointsLineWidth": 5, - "showPointsRadius": 3, - "showSeparateAxis": false, - "axisPosition": "left", - "thresholds": [ - { - "thresholdValueSource": "predefinedValue" - } - ], - "comparisonSettings": { - "showValuesForComparison": true - }, - "type": "bar" - }, - "_hash": 0.0661644137210089, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": null, - "postFuncBody": null - } - ] - } - ], - "timewindow": { - "hideInterval": false, - "hideAggregation": false, - "hideAggInterval": false, - "selectedTab": 1, - "history": { - "historyType": 0, - "timewindowMs": 31536000000, - "interval": 1000 - }, - "aggregation": { - "type": "NONE", - "limit": 1000 - } - }, - "showTitle": true, - "backgroundColor": "#FFFFFF", - "color": "rgba(0, 0, 0, 0.87)", - "padding": "0px", - "settings": { - "yAxes": { - "default": { - "units": null, - "decimals": 0, - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "left", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)", - "id": "default", - "order": 0, - "min": null, - "max": null - } - }, - "thresholds": [], - "dataZoom": false, - "stack": false, - "xAxis": { - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "bottom", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 10, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)" - }, - "noAggregationBarWidthSettings": { - "strategy": "group", - "groupWidth": { - "relative": true, - "relativeWidth": 6, - "absoluteWidth": 900000000 - }, - "barWidth": { - "relative": true, - "relativeWidth": 2, - "absoluteWidth": 1000 - } - }, - "showLegend": true, - "legendLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "legendLabelColor": "rgba(0, 0, 0, 0.76)", - "legendConfig": { - "direction": "column", - "position": "bottom", - "sortDataKeys": false, - "showMin": false, - "showMax": false, - "showAvg": false, - "showTotal": true, - "showLatest": false - }, - "showTooltip": true, - "tooltipTrigger": "axis", - "tooltipValueFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "500", - "lineHeight": "16px" - }, - "tooltipValueColor": "rgba(0, 0, 0, 0.76)", - "tooltipShowDate": true, - "tooltipDateFormat": { - "format": "yyyy-MM-dd HH:mm:ss", - "lastUpdateAgo": false, - "custom": false - }, - "tooltipDateFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "tooltipDateColor": "rgba(0, 0, 0, 0.76)", - "tooltipDateInterval": true, - "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", - "tooltipBackgroundBlur": 4, - "animation": { - "animation": true, - "animationThreshold": 2000, - "animationDuration": 1000, - "animationEasing": "cubicOut", - "animationDelay": 0, - "animationDurationUpdate": 300, - "animationEasingUpdate": "cubicOut", - "animationDelayUpdate": 0 - }, - "background": { - "type": "color", - "color": "#fff", - "overlay": { - "enabled": false, - "color": "rgba(255,255,255,0.72)", - "blur": 3 - } - } - }, - "title": "{i18n:api-usage.telemetry-persistence-monthly-activity}", - "dropShadow": true, - "enableFullscreen": true, - "titleStyle": null, - "configMode": "basic", - "actions": {}, - "showTitleIcon": false, - "titleIcon": "thermostat", - "iconColor": "#1F6BDD", - "useDashboardTimewindow": false, - "displayTimewindow": true, - "titleFont": { - "size": 16, - "sizeUnit": "px", - "family": "Roboto", - "weight": "500", - "style": "normal", - "lineHeight": "24px" - }, - "titleColor": "rgba(0, 0, 0, 0.87)", - "titleTooltip": "", - "widgetStyle": {}, - "widgetCss": "", - "pageSize": 1024, - "units": "", - "decimals": null, - "noDataDisplayMessage": "", - "timewindowStyle": { - "showIcon": false, - "iconSize": "24px", - "icon": null, - "iconPosition": "left", - "font": { - "size": 12, - "sizeUnit": "px", - "family": "Roboto", - "weight": "400", - "style": "normal", - "lineHeight": "16px" - }, - "color": "rgba(0, 0, 0, 0.38)", - "displayTypePrefix": true - }, - "margin": "0px", - "borderRadius": "0px", - "iconSize": "0px" - }, - "row": 0, - "col": 0, - "id": "226ef8c9-8488-3664-21ac-0b6217336202" - }, - "bef6c27b-9fe7-ee92-40d9-9696c501a1f9": { - "typeFullFqn": "system.time_series_chart", - "type": "timeseries", - "sizeX": 8, - "sizeY": 5, - "config": { - "datasources": [ - { - "type": "entity", - "name": null, - "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", - "filterId": null, - "dataKeys": [ - { - "name": "createdAlarmsCountHourly", - "type": "timeseries", - "label": "{i18n:api-usage.alarms-created}", - "color": "#d35a00", - "settings": { - "excludeFromStacking": false, - "hideDataByDefault": false, - "disableDataHiding": false, - "removeFromLegend": false, - "showLines": false, - "fillLines": false, - "showPoints": false, - "showPointShape": "circle", - "pointShapeFormatter": "var size = radius * Math.sqrt(Math.PI) / 2;\nctx.moveTo(x - size, y - size);\nctx.lineTo(x + size, y + size);\nctx.moveTo(x - size, y + size);\nctx.lineTo(x + size, y - size);", - "showPointsLineWidth": 5, - "showPointsRadius": 3, - "showSeparateAxis": false, - "axisPosition": "left", - "thresholds": [ - { - "thresholdValueSource": "predefinedValue" - } - ], - "comparisonSettings": { - "showValuesForComparison": true - }, - "type": "bar" - }, - "_hash": 0.0661644137210089, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": null, - "postFuncBody": null - } - ] - } - ], - "timewindow": { - "hideInterval": false, - "hideAggregation": false, - "hideAggInterval": false, - "selectedTab": 1, - "history": { - "historyType": 0, - "timewindowMs": 2592000000, - "interval": 86400000 - }, - "aggregation": { - "type": "SUM", - "limit": 1000 - } - }, - "showTitle": true, - "backgroundColor": "#FFFFFF", - "color": "rgba(0, 0, 0, 0.87)", - "padding": "0px", - "settings": { - "yAxes": { - "default": { - "units": null, - "decimals": 0, - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "left", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)", - "id": "default", - "order": 0, - "min": null, - "max": null - } - }, - "thresholds": [], - "dataZoom": false, - "stack": false, - "xAxis": { - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "bottom", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 10, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)" - }, - "noAggregationBarWidthSettings": { - "strategy": "group", - "groupWidth": { - "relative": false, - "relativeWidth": 2, - "absoluteWidth": 1800000 - }, - "barWidth": { - "relative": true, - "relativeWidth": 2, - "absoluteWidth": 1000 - } - }, - "showLegend": true, - "legendLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "legendLabelColor": "rgba(0, 0, 0, 0.76)", - "legendConfig": { - "direction": "column", - "position": "bottom", - "sortDataKeys": false, - "showMin": false, - "showMax": false, - "showAvg": false, - "showTotal": true, - "showLatest": false - }, - "showTooltip": true, - "tooltipTrigger": "axis", - "tooltipValueFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "500", - "lineHeight": "16px" - }, - "tooltipValueColor": "rgba(0, 0, 0, 0.76)", - "tooltipShowDate": true, - "tooltipDateFormat": { - "format": "yyyy-MM-dd HH:mm:ss", - "lastUpdateAgo": false, - "custom": false - }, - "tooltipDateFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "tooltipDateColor": "rgba(0, 0, 0, 0.76)", - "tooltipDateInterval": true, - "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", - "tooltipBackgroundBlur": 4, - "animation": { - "animation": true, - "animationThreshold": 2000, - "animationDuration": 1000, - "animationEasing": "cubicOut", - "animationDelay": 0, - "animationDurationUpdate": 300, - "animationEasingUpdate": "cubicOut", - "animationDelayUpdate": 0 - }, - "background": { - "type": "color", - "color": "#fff", - "overlay": { - "enabled": false, - "color": "rgba(255,255,255,0.72)", - "blur": 3 - } - } - }, - "title": "{i18n:api-usage.alarms-created-daily-activity}", - "dropShadow": true, - "enableFullscreen": true, - "titleStyle": null, - "configMode": "basic", - "actions": {}, - "showTitleIcon": false, - "titleIcon": "thermostat", - "iconColor": "#1F6BDD", - "useDashboardTimewindow": false, - "displayTimewindow": true, - "titleFont": { - "size": 16, - "sizeUnit": "px", - "family": "Roboto", - "weight": "500", - "style": "normal", - "lineHeight": "24px" - }, - "titleColor": "rgba(0, 0, 0, 0.87)", - "titleTooltip": "", - "widgetStyle": {}, - "widgetCss": "", - "pageSize": 1024, - "units": "", - "decimals": null, - "noDataDisplayMessage": "", - "timewindowStyle": { - "showIcon": false, - "iconSize": "24px", - "icon": null, - "iconPosition": "left", - "font": { - "size": 12, - "sizeUnit": "px", - "family": "Roboto", - "weight": "400", - "style": "normal", - "lineHeight": "16px" - }, - "color": "rgba(0, 0, 0, 0.38)", - "displayTypePrefix": true - }, - "margin": "0px", - "borderRadius": "0px", - "iconSize": "0px" - }, - "row": 0, - "col": 0, - "id": "bef6c27b-9fe7-ee92-40d9-9696c501a1f9" - }, - "52305cf8-2258-5745-a0e7-41a171594bb3": { - "typeFullFqn": "system.time_series_chart", - "type": "timeseries", - "sizeX": 8, - "sizeY": 5, - "config": { - "datasources": [ - { - "type": "entity", - "name": null, - "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", - "filterId": null, - "dataKeys": [ - { - "name": "createdAlarmsCount", - "type": "timeseries", - "label": "{i18n:api-usage.alarms-created}", - "color": "#d35a00", - "settings": { - "excludeFromStacking": false, - "hideDataByDefault": false, - "disableDataHiding": false, - "removeFromLegend": false, - "showLines": false, - "fillLines": false, - "showPoints": false, - "showPointShape": "circle", - "pointShapeFormatter": "var size = radius * Math.sqrt(Math.PI) / 2;\nctx.moveTo(x - size, y - size);\nctx.lineTo(x + size, y + size);\nctx.moveTo(x - size, y + size);\nctx.lineTo(x + size, y - size);", - "showPointsLineWidth": 5, - "showPointsRadius": 3, - "showSeparateAxis": false, - "axisPosition": "left", - "thresholds": [ - { - "thresholdValueSource": "predefinedValue" - } - ], - "comparisonSettings": { - "showValuesForComparison": true - }, - "type": "bar" - }, - "_hash": 0.0661644137210089, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": null, - "postFuncBody": null - } - ] - } - ], - "timewindow": { - "hideInterval": false, - "hideAggregation": false, - "hideAggInterval": false, - "selectedTab": 1, - "history": { - "historyType": 0, - "timewindowMs": 31536000000, - "interval": 1000 - }, - "aggregation": { - "type": "NONE", - "limit": 1000 - } - }, - "showTitle": true, - "backgroundColor": "#FFFFFF", - "color": "rgba(0, 0, 0, 0.87)", - "padding": "0px", - "settings": { - "yAxes": { - "default": { - "units": null, - "decimals": 0, - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "left", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)", - "id": "default", - "order": 0, - "min": null, - "max": null - } - }, - "thresholds": [], - "dataZoom": false, - "stack": false, - "xAxis": { - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "bottom", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 10, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)" - }, - "noAggregationBarWidthSettings": { - "strategy": "group", - "groupWidth": { - "relative": true, - "relativeWidth": 6, - "absoluteWidth": 900000000 - }, - "barWidth": { - "relative": true, - "relativeWidth": 2, - "absoluteWidth": 1000 - } - }, - "showLegend": true, - "legendLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "legendLabelColor": "rgba(0, 0, 0, 0.76)", - "legendConfig": { - "direction": "column", - "position": "bottom", - "sortDataKeys": false, - "showMin": false, - "showMax": false, - "showAvg": false, - "showTotal": true, - "showLatest": false - }, - "showTooltip": true, - "tooltipTrigger": "axis", - "tooltipValueFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "500", - "lineHeight": "16px" - }, - "tooltipValueColor": "rgba(0, 0, 0, 0.76)", - "tooltipShowDate": true, - "tooltipDateFormat": { - "format": "yyyy-MM-dd HH:mm:ss", - "lastUpdateAgo": false, - "custom": false - }, - "tooltipDateFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "tooltipDateColor": "rgba(0, 0, 0, 0.76)", - "tooltipDateInterval": true, - "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", - "tooltipBackgroundBlur": 4, - "animation": { - "animation": true, - "animationThreshold": 2000, - "animationDuration": 1000, - "animationEasing": "cubicOut", - "animationDelay": 0, - "animationDurationUpdate": 300, - "animationEasingUpdate": "cubicOut", - "animationDelayUpdate": 0 - }, - "background": { - "type": "color", - "color": "#fff", - "overlay": { - "enabled": false, - "color": "rgba(255,255,255,0.72)", - "blur": 3 - } - } - }, - "title": "{i18n:api-usage.alarms-created-monthly-activity}", - "dropShadow": true, - "enableFullscreen": true, - "titleStyle": null, - "configMode": "basic", - "actions": {}, - "showTitleIcon": false, - "titleIcon": "thermostat", - "iconColor": "#1F6BDD", - "useDashboardTimewindow": false, - "displayTimewindow": true, - "titleFont": { - "size": 16, - "sizeUnit": "px", - "family": "Roboto", - "weight": "500", - "style": "normal", - "lineHeight": "24px" - }, - "titleColor": "rgba(0, 0, 0, 0.87)", - "titleTooltip": "", - "widgetStyle": {}, - "widgetCss": "", - "pageSize": 1024, - "units": "", - "decimals": null, - "noDataDisplayMessage": "", - "timewindowStyle": { - "showIcon": false, - "iconSize": "24px", - "icon": null, - "iconPosition": "left", - "font": { - "size": 12, - "sizeUnit": "px", - "family": "Roboto", - "weight": "400", - "style": "normal", - "lineHeight": "16px" - }, - "color": "rgba(0, 0, 0, 0.38)", - "displayTypePrefix": true - }, - "margin": "0px", - "borderRadius": "0px", - "iconSize": "0px" - }, - "row": 0, - "col": 0, - "id": "52305cf8-2258-5745-a0e7-41a171594bb3" - }, - "36fdf999-ca22-9a4c-269d-3f004d792792": { - "typeFullFqn": "system.time_series_chart", - "type": "timeseries", - "sizeX": 8, - "sizeY": 5, - "config": { - "datasources": [ - { - "type": "entity", - "name": null, - "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", - "filterId": null, - "dataKeys": [ - { - "name": "emailCountHourly", - "type": "timeseries", - "label": "{i18n:api-usage.email-messages}", - "color": "#d35a00", - "settings": { - "excludeFromStacking": false, - "hideDataByDefault": false, - "disableDataHiding": false, - "removeFromLegend": false, - "showLines": false, - "fillLines": false, - "showPoints": false, - "showPointShape": "circle", - "pointShapeFormatter": "", - "showPointsLineWidth": 5, - "showPointsRadius": 3, - "showSeparateAxis": false, - "axisPosition": "left", - "thresholds": [ - { - "thresholdValueSource": "predefinedValue" - } - ], - "comparisonSettings": { - "showValuesForComparison": true - }, - "type": "bar" - }, - "_hash": 0.0661644137210089, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": null, - "postFuncBody": null - } - ] - } - ], - "timewindow": { - "hideInterval": false, - "hideAggregation": false, - "hideAggInterval": false, - "selectedTab": 1, - "history": { - "historyType": 0, - "timewindowMs": 2592000000, - "interval": 86400000 - }, - "aggregation": { - "type": "SUM", - "limit": 1000 - } - }, - "showTitle": true, - "backgroundColor": "#FFFFFF", - "color": "rgba(0, 0, 0, 0.87)", - "padding": "0px", - "settings": { - "yAxes": { - "default": { - "units": null, - "decimals": 0, - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "left", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)", - "id": "default", - "order": 0, - "min": null, - "max": null - } - }, - "thresholds": [], - "dataZoom": false, - "stack": false, - "xAxis": { - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "bottom", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 10, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)" - }, - "noAggregationBarWidthSettings": { - "strategy": "group", - "groupWidth": { - "relative": false, - "relativeWidth": 2, - "absoluteWidth": 1800000 - }, - "barWidth": { - "relative": true, - "relativeWidth": 2, - "absoluteWidth": 1000 - } - }, - "showLegend": true, - "legendLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "legendLabelColor": "rgba(0, 0, 0, 0.76)", - "legendConfig": { - "direction": "column", - "position": "bottom", - "sortDataKeys": false, - "showMin": false, - "showMax": false, - "showAvg": false, - "showTotal": true, - "showLatest": false - }, - "showTooltip": true, - "tooltipTrigger": "axis", - "tooltipValueFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "500", - "lineHeight": "16px" - }, - "tooltipValueColor": "rgba(0, 0, 0, 0.76)", - "tooltipShowDate": true, - "tooltipDateFormat": { - "format": "yyyy-MM-dd HH:mm:ss", - "lastUpdateAgo": false, - "custom": false - }, - "tooltipDateFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "tooltipDateColor": "rgba(0, 0, 0, 0.76)", - "tooltipDateInterval": true, - "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", - "tooltipBackgroundBlur": 4, - "animation": { - "animation": true, - "animationThreshold": 2000, - "animationDuration": 1000, - "animationEasing": "cubicOut", - "animationDelay": 0, - "animationDurationUpdate": 300, - "animationEasingUpdate": "cubicOut", - "animationDelayUpdate": 0 - }, - "background": { - "type": "color", - "color": "#fff", - "overlay": { - "enabled": false, - "color": "rgba(255,255,255,0.72)", - "blur": 3 - } - } - }, - "title": "{i18n:api-usage.email-messages-daily-activity}", - "dropShadow": true, - "enableFullscreen": true, - "titleStyle": null, - "configMode": "basic", - "actions": {}, - "showTitleIcon": false, - "titleIcon": "thermostat", - "iconColor": "#1F6BDD", - "useDashboardTimewindow": false, - "displayTimewindow": true, - "titleFont": { - "size": 16, - "sizeUnit": "px", - "family": "Roboto", - "weight": "500", - "style": "normal", - "lineHeight": "24px" - }, - "titleColor": "rgba(0, 0, 0, 0.87)", - "titleTooltip": "", - "widgetStyle": {}, - "widgetCss": "", - "pageSize": 1024, - "units": "", - "decimals": null, - "noDataDisplayMessage": "", - "timewindowStyle": { - "showIcon": false, - "iconSize": "24px", - "icon": null, - "iconPosition": "left", - "font": { - "size": 12, - "sizeUnit": "px", - "family": "Roboto", - "weight": "400", - "style": "normal", - "lineHeight": "16px" - }, - "color": "rgba(0, 0, 0, 0.38)", - "displayTypePrefix": true - }, - "margin": "0px", - "borderRadius": "0px", - "iconSize": "0px" - }, - "row": 0, - "col": 0, - "id": "36fdf999-ca22-9a4c-269d-3f004d792792" - }, - "9a191755-499d-535e-86c5-061102729c02": { - "typeFullFqn": "system.time_series_chart", - "type": "timeseries", - "sizeX": 8, - "sizeY": 5, - "config": { - "datasources": [ - { - "type": "entity", - "name": null, - "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", - "filterId": null, - "dataKeys": [ - { - "name": "smsCountHourly", - "type": "timeseries", - "label": "{i18n:api-usage.sms-messages}", - "color": "#f36021", - "settings": { - "excludeFromStacking": false, - "hideDataByDefault": false, - "disableDataHiding": false, - "removeFromLegend": false, - "showLines": false, - "fillLines": false, - "showPoints": false, - "showPointShape": "circle", - "pointShapeFormatter": "", - "showPointsLineWidth": 5, - "showPointsRadius": 3, - "showSeparateAxis": false, - "axisPosition": "left", - "thresholds": [ - { - "thresholdValueSource": "predefinedValue" - } - ], - "comparisonSettings": { - "showValuesForComparison": true - }, - "type": "bar" - }, - "_hash": 0.0661644137210089, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": null, - "postFuncBody": null - } - ] - } - ], - "timewindow": { - "hideInterval": false, - "hideAggregation": false, - "hideAggInterval": false, - "selectedTab": 1, - "history": { - "historyType": 0, - "timewindowMs": 2592000000, - "interval": 86400000 - }, - "aggregation": { - "type": "SUM", - "limit": 1000 - } - }, - "showTitle": true, - "backgroundColor": "#FFFFFF", - "color": "rgba(0, 0, 0, 0.87)", - "padding": "0px", - "settings": { - "yAxes": { - "default": { - "units": null, - "decimals": 0, - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "left", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)", - "id": "default", - "order": 0, - "min": null, - "max": null - } - }, - "thresholds": [], - "dataZoom": false, - "stack": false, - "xAxis": { - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "bottom", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 10, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)" - }, - "noAggregationBarWidthSettings": { - "strategy": "group", - "groupWidth": { - "relative": false, - "relativeWidth": 2, - "absoluteWidth": 1800000 - }, - "barWidth": { - "relative": true, - "relativeWidth": 2, - "absoluteWidth": 1000 - } - }, - "showLegend": true, - "legendLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "legendLabelColor": "rgba(0, 0, 0, 0.76)", - "legendConfig": { - "direction": "column", - "position": "bottom", - "sortDataKeys": false, - "showMin": false, - "showMax": false, - "showAvg": false, - "showTotal": true, - "showLatest": false - }, - "showTooltip": true, - "tooltipTrigger": "axis", - "tooltipValueFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "500", - "lineHeight": "16px" - }, - "tooltipValueColor": "rgba(0, 0, 0, 0.76)", - "tooltipShowDate": true, - "tooltipDateFormat": { - "format": "yyyy-MM-dd HH:mm:ss", - "lastUpdateAgo": false, - "custom": false - }, - "tooltipDateFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "tooltipDateColor": "rgba(0, 0, 0, 0.76)", - "tooltipDateInterval": true, - "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", - "tooltipBackgroundBlur": 4, - "animation": { - "animation": true, - "animationThreshold": 2000, - "animationDuration": 1000, - "animationEasing": "cubicOut", - "animationDelay": 0, - "animationDurationUpdate": 300, - "animationEasingUpdate": "cubicOut", - "animationDelayUpdate": 0 - }, - "background": { - "type": "color", - "color": "#fff", - "overlay": { - "enabled": false, - "color": "rgba(255,255,255,0.72)", - "blur": 3 - } - } - }, - "title": "{i18n:api-usage.sms-messages-daily-activity}", - "dropShadow": true, - "enableFullscreen": true, - "titleStyle": null, - "configMode": "basic", - "actions": {}, - "showTitleIcon": false, - "titleIcon": "thermostat", - "iconColor": "#1F6BDD", - "useDashboardTimewindow": false, - "displayTimewindow": true, - "titleFont": { - "size": 16, - "sizeUnit": "px", - "family": "Roboto", - "weight": "500", - "style": "normal", - "lineHeight": "24px" - }, - "titleColor": "rgba(0, 0, 0, 0.87)", - "titleTooltip": "", - "widgetStyle": {}, - "widgetCss": "", - "pageSize": 1024, - "units": "", - "decimals": null, - "noDataDisplayMessage": "", - "timewindowStyle": { - "showIcon": false, - "iconSize": "24px", - "icon": null, - "iconPosition": "left", - "font": { - "size": 12, - "sizeUnit": "px", - "family": "Roboto", - "weight": "400", - "style": "normal", - "lineHeight": "16px" - }, - "color": "rgba(0, 0, 0, 0.38)", - "displayTypePrefix": true - }, - "margin": "0px", - "borderRadius": "0px", - "iconSize": "0px" - }, - "row": 0, - "col": 0, - "id": "9a191755-499d-535e-86c5-061102729c02" - }, - "4b266318-8357-33ef-ca5a-74cbf90e014f": { - "typeFullFqn": "system.time_series_chart", - "type": "timeseries", - "sizeX": 8, - "sizeY": 5, - "config": { - "datasources": [ - { - "type": "entity", - "name": null, - "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", - "filterId": null, - "dataKeys": [ - { - "name": "emailCount", - "type": "timeseries", - "label": "{i18n:api-usage.email-messages}", - "color": "#d35a00", - "settings": { - "excludeFromStacking": false, - "hideDataByDefault": false, - "disableDataHiding": false, - "removeFromLegend": false, - "showLines": false, - "fillLines": false, - "showPoints": false, - "showPointShape": "circle", - "pointShapeFormatter": "", - "showPointsLineWidth": 5, - "showPointsRadius": 3, - "showSeparateAxis": false, - "axisPosition": "left", - "thresholds": [ - { - "thresholdValueSource": "predefinedValue" - } - ], - "comparisonSettings": { - "showValuesForComparison": true - }, - "type": "bar" - }, - "_hash": 0.0661644137210089, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": null, - "postFuncBody": null - } - ] - } - ], - "timewindow": { - "hideInterval": false, - "hideAggregation": false, - "hideAggInterval": false, - "selectedTab": 1, - "history": { - "historyType": 0, - "timewindowMs": 31536000000, - "interval": 1000 - }, - "aggregation": { - "type": "NONE", - "limit": 1000 - } - }, - "showTitle": true, - "backgroundColor": "#FFFFFF", - "color": "rgba(0, 0, 0, 0.87)", - "padding": "0px", - "settings": { - "yAxes": { - "default": { - "units": null, - "decimals": 0, - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "left", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)", - "id": "default", - "order": 0, - "min": null, - "max": null - } - }, - "thresholds": [], - "dataZoom": false, - "stack": false, - "xAxis": { - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "bottom", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 10, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)" - }, - "noAggregationBarWidthSettings": { - "strategy": "group", - "groupWidth": { - "relative": true, - "relativeWidth": 6, - "absoluteWidth": 900000000 - }, - "barWidth": { - "relative": true, - "relativeWidth": 2, - "absoluteWidth": 1000 - } - }, - "showLegend": true, - "legendLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "legendLabelColor": "rgba(0, 0, 0, 0.76)", - "legendConfig": { - "direction": "column", - "position": "bottom", - "sortDataKeys": false, - "showMin": false, - "showMax": false, - "showAvg": false, - "showTotal": true, - "showLatest": false - }, - "showTooltip": true, - "tooltipTrigger": "axis", - "tooltipValueFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "500", - "lineHeight": "16px" - }, - "tooltipValueColor": "rgba(0, 0, 0, 0.76)", - "tooltipShowDate": true, - "tooltipDateFormat": { - "format": "yyyy-MM-dd HH:mm:ss", - "lastUpdateAgo": false, - "custom": false - }, - "tooltipDateFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "tooltipDateColor": "rgba(0, 0, 0, 0.76)", - "tooltipDateInterval": true, - "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", - "tooltipBackgroundBlur": 4, - "animation": { - "animation": true, - "animationThreshold": 2000, - "animationDuration": 1000, - "animationEasing": "cubicOut", - "animationDelay": 0, - "animationDurationUpdate": 300, - "animationEasingUpdate": "cubicOut", - "animationDelayUpdate": 0 - }, - "background": { - "type": "color", - "color": "#fff", - "overlay": { - "enabled": false, - "color": "rgba(255,255,255,0.72)", - "blur": 3 - } - } - }, - "title": "{i18n:api-usage.email-messages-monthly-activity}", - "dropShadow": true, - "enableFullscreen": true, - "titleStyle": null, - "configMode": "basic", - "actions": {}, - "showTitleIcon": false, - "titleIcon": "thermostat", - "iconColor": "#1F6BDD", - "useDashboardTimewindow": false, - "displayTimewindow": true, - "titleFont": { - "size": 16, - "sizeUnit": "px", - "family": "Roboto", - "weight": "500", - "style": "normal", - "lineHeight": "24px" - }, - "titleColor": "rgba(0, 0, 0, 0.87)", - "titleTooltip": "", - "widgetStyle": {}, - "widgetCss": "", - "pageSize": 1024, - "units": "", - "decimals": null, - "noDataDisplayMessage": "", - "timewindowStyle": { - "showIcon": false, - "iconSize": "24px", - "icon": null, - "iconPosition": "left", - "font": { - "size": 12, - "sizeUnit": "px", - "family": "Roboto", - "weight": "400", - "style": "normal", - "lineHeight": "16px" - }, - "color": "rgba(0, 0, 0, 0.38)", - "displayTypePrefix": true - }, - "margin": "0px", - "borderRadius": "0px", - "iconSize": "0px" - }, - "row": 0, - "col": 0, - "id": "4b266318-8357-33ef-ca5a-74cbf90e014f" - }, - "5aa33b0b-3bd5-7fe7-ee72-f564c2ca79d8": { - "typeFullFqn": "system.time_series_chart", - "type": "timeseries", - "sizeX": 8, - "sizeY": 5, - "config": { - "datasources": [ - { - "type": "entity", - "name": null, - "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", - "filterId": null, - "dataKeys": [ - { - "name": "smsCount", - "type": "timeseries", - "label": "{i18n:api-usage.sms-messages}", - "color": "#f36021", - "settings": { - "excludeFromStacking": false, - "hideDataByDefault": false, - "disableDataHiding": false, - "removeFromLegend": false, - "showLines": false, - "fillLines": false, - "showPoints": false, - "showPointShape": "circle", - "pointShapeFormatter": "", - "showPointsLineWidth": 5, - "showPointsRadius": 3, - "showSeparateAxis": false, - "axisPosition": "left", - "thresholds": [ - { - "thresholdValueSource": "predefinedValue" - } - ], - "comparisonSettings": { - "showValuesForComparison": true - }, - "type": "bar" - }, - "_hash": 0.0661644137210089, - "units": null, - "decimals": null, - "funcBody": null, - "usePostProcessing": null, - "postFuncBody": null - } - ] - } - ], - "timewindow": { - "hideInterval": false, - "hideAggregation": false, - "hideAggInterval": false, - "selectedTab": 1, - "history": { - "historyType": 0, - "timewindowMs": 31536000000, - "interval": 1000 - }, - "aggregation": { - "type": "NONE", - "limit": 1000 - } - }, - "showTitle": true, - "backgroundColor": "#FFFFFF", - "color": "rgba(0, 0, 0, 0.87)", - "padding": "0px", - "settings": { - "yAxes": { - "default": { - "units": null, - "decimals": 0, - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "left", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)", - "id": "default", - "order": 0, - "min": null, - "max": null - } - }, - "thresholds": [], - "dataZoom": false, - "stack": false, - "xAxis": { - "show": true, - "label": "", - "labelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "600", - "lineHeight": "1" - }, - "labelColor": "rgba(0, 0, 0, 0.54)", - "position": "bottom", - "showTickLabels": true, - "tickLabelFont": { - "family": "Roboto", - "size": 10, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "1" - }, - "tickLabelColor": "rgba(0, 0, 0, 0.54)", - "showTicks": true, - "ticksColor": "rgba(0, 0, 0, 0.54)", - "showLine": true, - "lineColor": "rgba(0, 0, 0, 0.54)", - "showSplitLines": true, - "splitLinesColor": "rgba(0, 0, 0, 0.12)" - }, - "noAggregationBarWidthSettings": { - "strategy": "group", - "groupWidth": { - "relative": true, - "relativeWidth": 6, - "absoluteWidth": 900000000 - }, - "barWidth": { - "relative": true, - "relativeWidth": 2, - "absoluteWidth": 1000 - } - }, - "showLegend": true, - "legendLabelFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "legendLabelColor": "rgba(0, 0, 0, 0.76)", - "legendConfig": { - "direction": "column", - "position": "bottom", - "sortDataKeys": false, - "showMin": false, - "showMax": false, - "showAvg": false, - "showTotal": true, - "showLatest": false - }, - "showTooltip": true, - "tooltipTrigger": "axis", - "tooltipValueFont": { - "family": "Roboto", - "size": 12, - "sizeUnit": "px", - "style": "normal", - "weight": "500", - "lineHeight": "16px" - }, - "tooltipValueColor": "rgba(0, 0, 0, 0.76)", - "tooltipShowDate": true, - "tooltipDateFormat": { - "format": "yyyy-MM-dd HH:mm:ss", - "lastUpdateAgo": false, - "custom": false - }, - "tooltipDateFont": { - "family": "Roboto", - "size": 11, - "sizeUnit": "px", - "style": "normal", - "weight": "400", - "lineHeight": "16px" - }, - "tooltipDateColor": "rgba(0, 0, 0, 0.76)", - "tooltipDateInterval": true, - "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", - "tooltipBackgroundBlur": 4, - "animation": { - "animation": true, - "animationThreshold": 2000, - "animationDuration": 1000, - "animationEasing": "cubicOut", - "animationDelay": 0, - "animationDurationUpdate": 300, - "animationEasingUpdate": "cubicOut", - "animationDelayUpdate": 0 - }, - "background": { - "type": "color", - "color": "#fff", - "overlay": { - "enabled": false, - "color": "rgba(255,255,255,0.72)", - "blur": 3 - } - } - }, - "title": "{i18n:api-usage.sms-messages-monthly-activity}", - "dropShadow": true, - "enableFullscreen": true, - "titleStyle": null, - "configMode": "basic", - "actions": {}, - "showTitleIcon": false, - "titleIcon": "thermostat", - "iconColor": "#1F6BDD", - "useDashboardTimewindow": false, - "displayTimewindow": true, - "titleFont": { - "size": 16, - "sizeUnit": "px", - "family": "Roboto", - "weight": "500", - "style": "normal", - "lineHeight": "24px" - }, - "titleColor": "rgba(0, 0, 0, 0.87)", - "titleTooltip": "", - "widgetStyle": {}, - "widgetCss": "", - "pageSize": 1024, - "units": "", - "decimals": null, - "noDataDisplayMessage": "", - "timewindowStyle": { - "showIcon": false, - "iconSize": "24px", - "icon": null, - "iconPosition": "left", - "font": { - "size": 12, - "sizeUnit": "px", - "family": "Roboto", - "weight": "400", - "style": "normal", - "lineHeight": "16px" - }, - "color": "rgba(0, 0, 0, 0.38)", - "displayTypePrefix": true - }, - "margin": "0px", - "borderRadius": "0px", - "iconSize": "0px" - }, - "row": 0, - "col": 0, - "id": "5aa33b0b-3bd5-7fe7-ee72-f564c2ca79d8" - }, "fa938580-33db-f1b3-fafc-bc3e3784ad57": { "typeFullFqn": "system.time_series_chart", "type": "timeseries", @@ -7735,7 +383,6 @@ } ], "timewindow": { - "hideInterval": false, "hideAggregation": false, "hideAggInterval": false, "selectedTab": 0, @@ -7818,6 +465,7 @@ "lineHeight": "1" }, "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, "showTicks": true, "ticksColor": "rgba(0, 0, 0, 0.54)", "showLine": true, @@ -7856,7 +504,8 @@ "showMax": true, "showAvg": false, "showTotal": true, - "showLatest": false + "showLatest": false, + "valueFormat": null }, "showTooltip": true, "tooltipTrigger": "axis", @@ -7873,7 +522,9 @@ "tooltipDateFormat": { "format": "yyyy-MM-dd HH:mm:ss", "lastUpdateAgo": false, - "custom": false + "custom": false, + "auto": true, + "autoDateFormatSettings": {} }, "tooltipDateFont": { "family": "Roboto", @@ -7907,7 +558,74 @@ "blur": 3 } }, - "padding": "12px" + "padding": "12px", + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)" }, "title": "{i18n:api-usage.queue-stats}", "dropShadow": true, @@ -7953,7 +671,7 @@ "displayTypePrefix": true }, "margin": "0px", - "borderRadius": "0px", + "borderRadius": "4px", "iconSize": "0px" }, "row": 0, @@ -8144,7 +862,6 @@ } ], "timewindow": { - "hideInterval": false, "hideAggregation": false, "hideAggInterval": false, "selectedTab": 0, @@ -8227,6 +944,7 @@ "lineHeight": "1" }, "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, "showTicks": true, "ticksColor": "rgba(0, 0, 0, 0.54)", "showLine": true, @@ -8265,7 +983,8 @@ "showMax": true, "showAvg": false, "showTotal": true, - "showLatest": false + "showLatest": false, + "valueFormat": null }, "showTooltip": true, "tooltipTrigger": "axis", @@ -8282,7 +1001,9 @@ "tooltipDateFormat": { "format": "yyyy-MM-dd HH:mm:ss", "lastUpdateAgo": false, - "custom": false + "custom": false, + "auto": true, + "autoDateFormatSettings": {} }, "tooltipDateFont": { "family": "Roboto", @@ -8316,7 +1037,74 @@ "blur": 3 } }, - "padding": "12px" + "padding": "12px", + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)" }, "title": "{i18n:api-usage.processing-failures-and-timeouts}", "dropShadow": true, @@ -8362,12 +1150,12153 @@ "displayTypePrefix": true }, "margin": "0px", - "borderRadius": "0px", + "borderRadius": "4px", "iconSize": "0px" }, "row": 0, "col": 0, "id": "2ee89893-4e38-5331-95b7-3fd4f310c5a7" + }, + "85240e8c-7af7-90a9-ad0a-726013c479a6": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "transportMsgCountHourly", + "type": "timeseries", + "label": "{i18n:api-usage.transport-messages}", + "color": "#2196f3", + "settings": { + "excludeFromStacking": false, + "hideDataByDefault": false, + "disableDataHiding": false, + "removeFromLegend": false, + "showLines": false, + "fillLines": false, + "showPoints": false, + "showPointShape": "circle", + "pointShapeFormatter": "", + "showPointsLineWidth": 5, + "showPointsRadius": 3, + "showSeparateAxis": false, + "axisPosition": "left", + "thresholds": [ + { + "thresholdValueSource": "predefinedValue" + } + ], + "comparisonSettings": { + "showValuesForComparison": true + }, + "type": "bar" + }, + "_hash": 0.0661644137210089, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": false, + "postFuncBody": null, + "aggregationType": null + } + ], + "alarmFilterConfig": { + "statusList": [ + "ACTIVE" + ] + } + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 0, + "realtime": { + "realtimeType": 0, + "interval": 3600000, + "timewindowMs": 86400000, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideQuickInterval": false + }, + "history": { + "historyType": 0, + "interval": 1000, + "timewindowMs": 60000, + "fixedTimewindow": null, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideFixedInterval": false, + "hideQuickInterval": false + }, + "aggregation": { + "type": "SUM", + "limit": 50000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": null, + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 3600000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.transport-messages-hourly-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": { + "headerButton": [ + { + "name": "{i18n:api-usage.view-details}", + "icon": "insert_chart", + "type": "openDashboardState", + "targetDashboardStateId": "transport", + "setEntityId": false, + "stateEntityParamName": null, + "openRightLayout": false, + "id": "6ef12f6a-0266-25cf-6ca5-5dcb772252c6" + } + ] + }, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "85240e8c-7af7-90a9-ad0a-726013c479a6" + }, + "d0a10a8f-8f48-f9d6-8306-d12af9b49690": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "transportDataPointsCountHourly", + "type": "timeseries", + "label": "{i18n:api-usage.transport-data-points}", + "color": "#4caf50", + "settings": { + "excludeFromStacking": false, + "hideDataByDefault": false, + "disableDataHiding": false, + "removeFromLegend": false, + "showLines": false, + "fillLines": false, + "showPoints": false, + "showPointShape": "circle", + "pointShapeFormatter": "", + "showPointsLineWidth": 5, + "showPointsRadius": 3, + "showSeparateAxis": false, + "axisPosition": "left", + "thresholds": [ + { + "thresholdValueSource": "predefinedValue" + } + ], + "comparisonSettings": { + "showValuesForComparison": true + }, + "type": "bar" + }, + "_hash": 0.46849996721308895, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null + } + ], + "alarmFilterConfig": { + "statusList": [ + "ACTIVE" + ] + } + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 0, + "realtime": { + "realtimeType": 0, + "interval": 3600000, + "timewindowMs": 86400000, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideQuickInterval": false + }, + "history": { + "historyType": 0, + "interval": 1000, + "timewindowMs": 60000, + "fixedTimewindow": null, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideFixedInterval": false, + "hideQuickInterval": false + }, + "aggregation": { + "type": "SUM", + "limit": 50000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": null, + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 3600000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.transport-data-point-hourly-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": { + "headerButton": [ + { + "name": "{i18n:api-usage.view-details}", + "icon": "insert_chart", + "type": "openDashboardState", + "targetDashboardStateId": "transport", + "setEntityId": false, + "stateEntityParamName": null, + "openRightLayout": false, + "id": "6ef12f6a-0266-25cf-6ca5-5dcb772252c6" + } + ] + }, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "d0a10a8f-8f48-f9d6-8306-d12af9b49690" + }, + "4544080d-9b6f-b592-9cd4-0e0335d33857": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "ruleEngineExecutionCountHourly", + "type": "timeseries", + "label": "{i18n:api-usage.rule-engine-executions}", + "color": "#ab00ff", + "settings": { + "showInLegend": true, + "dataHiddenByDefault": false, + "type": "bar", + "lineSettings": { + "showLine": true, + "step": false, + "stepType": "start", + "smooth": false, + "lineType": "solid", + "lineWidth": 2, + "showPoints": false, + "showPointLabel": false, + "pointLabelPosition": "top", + "pointLabelFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "pointLabelColor": "rgba(0, 0, 0, 0.76)", + "pointShape": "emptyCircle", + "pointSize": 4, + "fillAreaSettings": { + "type": "none", + "opacity": 0.4, + "gradient": { + "start": 100, + "end": 0 + } + } + }, + "barSettings": { + "showBorder": false, + "borderWidth": 2, + "borderRadius": 0, + "showLabel": false, + "labelPosition": "top", + "labelFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.76)", + "backgroundSettings": { + "type": "none", + "opacity": 0.4, + "gradient": { + "start": 100, + "end": 0 + } + } + } + }, + "_hash": 0.0661644137210089, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null, + "aggregationType": null + } + ], + "alarmFilterConfig": { + "statusList": [ + "ACTIVE" + ] + } + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 0, + "realtime": { + "realtimeType": 0, + "interval": 3600000, + "timewindowMs": 86400000, + "quickInterval": "CURRENT_YEAR", + "hideInterval": false, + "hideLastInterval": false, + "hideQuickInterval": false + }, + "history": { + "historyType": 0, + "interval": 1000, + "timewindowMs": 60000, + "fixedTimewindow": null, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideFixedInterval": false, + "hideQuickInterval": false + }, + "aggregation": { + "type": "SUM", + "limit": 50000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 3600000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.rule-engine-hourly-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": { + "headerButton": [ + { + "name": "{i18n:api-usage.view-statistics}", + "icon": "show_chart", + "type": "openDashboardState", + "targetDashboardStateId": "rule_engine_statistics", + "setEntityId": false, + "stateEntityParamName": null, + "openRightLayout": false, + "id": "f9f08190-9ed9-d802-5b7a-c57ff84b5648" + }, + { + "name": "{i18n:api-usage.view-details}", + "icon": "insert_chart", + "type": "openDashboardState", + "targetDashboardStateId": "rule_engine_execution", + "setEntityId": false, + "stateEntityParamName": null, + "openRightLayout": false, + "id": "1aec196b-44ba-ddf4-c4dc-c3f60c1eb6fc" + } + ] + }, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "4544080d-9b6f-b592-9cd4-0e0335d33857" + }, + "5d0f2f57-499d-1324-8e1b-cfbc0b3149d2": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "storageDataPointsCountHourly", + "type": "timeseries", + "label": "{i18n:api-usage.data-points-storage-days}", + "color": "#1039ee", + "settings": { + "showInLegend": true, + "dataHiddenByDefault": false, + "type": "bar", + "lineSettings": { + "showLine": true, + "step": false, + "stepType": "start", + "smooth": false, + "lineType": "solid", + "lineWidth": 2, + "showPoints": false, + "showPointLabel": false, + "pointLabelPosition": "top", + "pointLabelFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "pointLabelColor": "rgba(0, 0, 0, 0.76)", + "pointShape": "emptyCircle", + "pointSize": 4, + "fillAreaSettings": { + "type": "none", + "opacity": 0.4, + "gradient": { + "start": 100, + "end": 0 + } + } + }, + "barSettings": { + "showBorder": false, + "borderWidth": 2, + "borderRadius": 0, + "showLabel": false, + "labelPosition": "top", + "labelFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.76)", + "backgroundSettings": { + "type": "none", + "opacity": 0.4, + "gradient": { + "start": 100, + "end": 0 + } + } + } + }, + "_hash": 0.0661644137210089, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null, + "aggregationType": null + } + ], + "alarmFilterConfig": { + "statusList": [ + "ACTIVE" + ] + } + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 0, + "realtime": { + "realtimeType": 0, + "interval": 3600000, + "timewindowMs": 86400000, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideQuickInterval": false + }, + "history": { + "historyType": 0, + "interval": 1000, + "timewindowMs": 60000, + "fixedTimewindow": null, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideFixedInterval": false, + "hideQuickInterval": false + }, + "aggregation": { + "type": "SUM", + "limit": 50000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 3600000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.telemetry-persistence-hourly-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": { + "headerButton": [ + { + "name": "{i18n:api-usage.view-details}", + "icon": "insert_chart", + "type": "openDashboardState", + "targetDashboardStateId": "telemetry_persistence", + "setEntityId": false, + "stateEntityParamName": null, + "openRightLayout": false, + "id": "16707efb-e572-bd02-c219-55fc1b0f672a" + } + ] + }, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "5d0f2f57-499d-1324-8e1b-cfbc0b3149d2" + }, + "51608a74-f213-d8c9-8df8-b42238ef93a6": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "transportMsgCountHourly", + "type": "timeseries", + "label": "{i18n:api-usage.transport-messages}", + "color": "#2196f3", + "settings": { + "excludeFromStacking": false, + "hideDataByDefault": false, + "disableDataHiding": false, + "removeFromLegend": false, + "showLines": false, + "fillLines": false, + "showPoints": false, + "showPointShape": "circle", + "pointShapeFormatter": "", + "showPointsLineWidth": 5, + "showPointsRadius": 3, + "showSeparateAxis": false, + "axisPosition": "left", + "thresholds": [ + { + "thresholdValueSource": "predefinedValue" + } + ], + "comparisonSettings": { + "showValuesForComparison": true + }, + "type": "bar" + }, + "_hash": 0.0661644137210089, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null + } + ], + "alarmFilterConfig": { + "statusList": [ + "ACTIVE" + ] + } + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 0, + "realtime": { + "realtimeType": 0, + "interval": 3600000, + "timewindowMs": 86400000, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideQuickInterval": false + }, + "history": { + "historyType": 0, + "interval": 86400000, + "timewindowMs": 2592000000, + "fixedTimewindow": null, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideFixedInterval": false, + "hideQuickInterval": false + }, + "aggregation": { + "type": "SUM", + "limit": 25000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 1800000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.transport-msg-hourly-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": {}, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "51608a74-f213-d8c9-8df8-b42238ef93a6" + }, + "fb155957-1af4-233e-e2fb-09e648e75d6e": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "transportMsgCountHourly", + "type": "timeseries", + "label": "{i18n:api-usage.transport-messages}", + "color": "#2196f3", + "settings": { + "excludeFromStacking": false, + "hideDataByDefault": false, + "disableDataHiding": false, + "removeFromLegend": false, + "showLines": false, + "fillLines": false, + "showPoints": false, + "showPointShape": "circle", + "pointShapeFormatter": "", + "showPointsLineWidth": 5, + "showPointsRadius": 3, + "showSeparateAxis": false, + "axisPosition": "left", + "thresholds": [ + { + "thresholdValueSource": "predefinedValue" + } + ], + "comparisonSettings": { + "showValuesForComparison": true + }, + "type": "bar" + }, + "_hash": 0.0661644137210089, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null + } + ], + "alarmFilterConfig": { + "statusList": [ + "ACTIVE" + ] + } + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 1, + "history": { + "historyType": 0, + "timewindowMs": 2592000000, + "interval": 86400000, + "fixedTimewindow": { + "startTimeMs": 1709729389667, + "endTimeMs": 1709815789667 + }, + "quickInterval": "CURRENT_DAY" + }, + "aggregation": { + "type": "SUM", + "limit": 25000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 1800000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.transport-msg-daily-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": {}, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "fb155957-1af4-233e-e2fb-09e648e75d6e" + }, + "4817e33b-87be-5be3-eaca-ca68a2eb4e0c": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "transportMsgCountHourly", + "type": "timeseries", + "label": "{i18n:api-usage.transport-messages}", + "color": "#2196f3", + "settings": { + "excludeFromStacking": false, + "hideDataByDefault": false, + "disableDataHiding": false, + "removeFromLegend": false, + "showLines": false, + "fillLines": false, + "showPoints": false, + "showPointShape": "circle", + "pointShapeFormatter": "", + "showPointsLineWidth": 5, + "showPointsRadius": 3, + "showSeparateAxis": false, + "axisPosition": "left", + "thresholds": [ + { + "thresholdValueSource": "predefinedValue" + } + ], + "comparisonSettings": { + "showValuesForComparison": true + }, + "type": "bar" + }, + "_hash": 0.0661644137210089, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null + } + ] + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 1, + "realtime": { + "realtimeType": 0, + "interval": 1000, + "timewindowMs": 60000, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideQuickInterval": false + }, + "history": { + "historyType": 0, + "interval": 2592000000, + "timewindowMs": 31536000000, + "fixedTimewindow": null, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideFixedInterval": false, + "hideQuickInterval": false + }, + "aggregation": { + "type": "NONE", + "limit": 25000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 1800000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.transport-msg-monthly-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": {}, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "4817e33b-87be-5be3-eaca-ca68a2eb4e0c" + }, + "9e00cc90-520d-2108-1d2f-bba68ed5cbf1": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "transportDataPointsCountHourly", + "type": "timeseries", + "label": "{i18n:api-usage.transport-data-points}", + "color": "#4CAF50", + "settings": { + "excludeFromStacking": false, + "hideDataByDefault": false, + "disableDataHiding": false, + "removeFromLegend": false, + "showLines": false, + "fillLines": false, + "showPoints": false, + "showPointShape": "circle", + "pointShapeFormatter": "", + "showPointsLineWidth": 5, + "showPointsRadius": 3, + "showSeparateAxis": false, + "axisPosition": "left", + "thresholds": [ + { + "thresholdValueSource": "predefinedValue" + } + ], + "comparisonSettings": { + "showValuesForComparison": true + }, + "type": "bar", + "yAxisId": "default" + }, + "_hash": 0.0661644137210089, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null, + "aggregationType": null + } + ], + "alarmFilterConfig": { + "statusList": [ + "ACTIVE" + ] + } + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 0, + "realtime": { + "realtimeType": 0, + "interval": 3600000, + "timewindowMs": 86400000, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideQuickInterval": false + }, + "history": { + "historyType": 0, + "interval": 86400000, + "timewindowMs": 2592000000, + "fixedTimewindow": null, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideFixedInterval": false, + "hideQuickInterval": false + }, + "aggregation": { + "type": "SUM", + "limit": 25000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 1800000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.transport-data-points-hourly-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": {}, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "9e00cc90-520d-2108-1d2f-bba68ed5cbf1" + }, + "79056202-c92b-1dae-ce49-318ec52e2d3b": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "transportDataPointsCountHourly", + "type": "timeseries", + "label": "{i18n:api-usage.transport-data-points}", + "color": "#4CAF50", + "settings": { + "excludeFromStacking": false, + "hideDataByDefault": false, + "disableDataHiding": false, + "removeFromLegend": false, + "showLines": false, + "fillLines": false, + "showPoints": false, + "showPointShape": "circle", + "pointShapeFormatter": "", + "showPointsLineWidth": 5, + "showPointsRadius": 3, + "showSeparateAxis": false, + "axisPosition": "left", + "thresholds": [ + { + "thresholdValueSource": "predefinedValue" + } + ], + "comparisonSettings": { + "showValuesForComparison": true + }, + "type": "bar", + "yAxisId": "default" + }, + "_hash": 0.0661644137210089, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null, + "aggregationType": null + } + ], + "alarmFilterConfig": { + "statusList": [ + "ACTIVE" + ] + } + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 1, + "history": { + "historyType": 0, + "timewindowMs": 2592000000, + "interval": 86400000, + "fixedTimewindow": { + "startTimeMs": 1709729389667, + "endTimeMs": 1709815789667 + }, + "quickInterval": "CURRENT_DAY" + }, + "aggregation": { + "type": "SUM", + "limit": 25000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 1800000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.transport-data-points-daily-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": {}, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "79056202-c92b-1dae-ce49-318ec52e2d3b" + }, + "966ffee7-ba0d-8e54-f903-e8d015ca8cd2": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "transportDataPointsCountHourly", + "type": "timeseries", + "label": "{i18n:api-usage.transport-data-points}", + "color": "#4CAF50", + "settings": { + "yAxisId": "default", + "showInLegend": true, + "dataHiddenByDefault": false, + "type": "bar", + "lineSettings": { + "showLine": true, + "step": false, + "stepType": "start", + "smooth": false, + "lineType": "solid", + "lineWidth": 2, + "showPoints": false, + "showPointLabel": false, + "pointLabelPosition": "top", + "pointLabelFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "pointLabelColor": "rgba(0, 0, 0, 0.76)", + "enablePointLabelBackground": false, + "pointLabelBackground": "rgba(255,255,255,0.56)", + "pointShape": "emptyCircle", + "pointSize": 4, + "fillAreaSettings": { + "type": "none", + "opacity": 0.4, + "gradient": { + "start": 100, + "end": 0 + } + } + }, + "barSettings": { + "showBorder": false, + "borderWidth": 2, + "borderRadius": 0, + "showLabel": false, + "labelPosition": "top", + "labelFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.76)", + "enableLabelBackground": false, + "labelBackground": "rgba(255,255,255,0.56)", + "backgroundSettings": { + "type": "none", + "opacity": 0.4, + "gradient": { + "start": 100, + "end": 0 + } + } + }, + "comparisonSettings": { + "showValuesForComparison": false, + "comparisonValuesLabel": "", + "color": "" + } + }, + "_hash": 0.12814821361119078, + "aggregationType": null, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null + } + ], + "alarmFilterConfig": { + "statusList": [ + "ACTIVE" + ] + } + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 1, + "realtime": { + "realtimeType": 0, + "interval": 1000, + "timewindowMs": 60000, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideQuickInterval": false + }, + "history": { + "historyType": 0, + "interval": 2592000000, + "timewindowMs": 31536000000, + "fixedTimewindow": null, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideFixedInterval": false, + "hideQuickInterval": false + }, + "aggregation": { + "type": "NONE", + "limit": 25000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 1800000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.transport-data-points-monthly-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": {}, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "966ffee7-ba0d-8e54-f903-e8d015ca8cd2" + }, + "b1a9a51f-e5a6-9d5f-ef5c-25c2a68af1b0": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "ruleEngineExecutionCountHourly", + "type": "timeseries", + "label": "{i18n:api-usage.rule-engine-executions}", + "color": "#AB00FF", + "settings": { + "yAxisId": "default", + "showInLegend": true, + "dataHiddenByDefault": false, + "type": "bar", + "lineSettings": { + "showLine": true, + "step": false, + "stepType": "start", + "smooth": false, + "lineType": "solid", + "lineWidth": 2, + "showPoints": false, + "showPointLabel": false, + "pointLabelPosition": "top", + "pointLabelFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "pointLabelColor": "rgba(0, 0, 0, 0.76)", + "enablePointLabelBackground": false, + "pointLabelBackground": "rgba(255,255,255,0.56)", + "pointShape": "emptyCircle", + "pointSize": 4, + "fillAreaSettings": { + "type": "none", + "opacity": 0.4, + "gradient": { + "start": 100, + "end": 0 + } + } + }, + "barSettings": { + "showBorder": false, + "borderWidth": 2, + "borderRadius": 0, + "showLabel": false, + "labelPosition": "top", + "labelFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.76)", + "enableLabelBackground": false, + "labelBackground": "rgba(255,255,255,0.56)", + "backgroundSettings": { + "type": "none", + "opacity": 0.4, + "gradient": { + "start": 100, + "end": 0 + } + } + }, + "comparisonSettings": { + "showValuesForComparison": false, + "comparisonValuesLabel": "", + "color": "" + } + }, + "_hash": 0.5078724779454146, + "aggregationType": null, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null + } + ], + "alarmFilterConfig": { + "statusList": [ + "ACTIVE" + ] + } + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 0, + "realtime": { + "realtimeType": 0, + "interval": 3600000, + "timewindowMs": 86400000, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideQuickInterval": false + }, + "history": { + "historyType": 0, + "interval": 86400000, + "timewindowMs": 2592000000, + "fixedTimewindow": null, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideFixedInterval": false, + "hideQuickInterval": false + }, + "aggregation": { + "type": "SUM", + "limit": 25000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 1800000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.rule-engine-hourly-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": { + "headerButton": [ + { + "name": "{i18n:api-usage.view-statistics}", + "buttonType": "icon", + "icon": "show_chart", + "buttonColor": "rgba(0, 0, 0, 0.87)", + "customButtonStyle": {}, + "useShowWidgetActionFunction": null, + "showWidgetActionFunction": "return true;", + "type": "updateDashboardState", + "targetDashboardStateId": "rule_engine_statistics", + "setEntityId": false, + "stateEntityParamName": null, + "openRightLayout": false, + "openInSeparateDialog": false, + "openInPopover": false, + "id": "8b57e118-84fc-4add-2536-d3cfde018b83" + } + ] + }, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "b1a9a51f-e5a6-9d5f-ef5c-25c2a68af1b0" + }, + "84fbe63a-bcb6-7bc1-8af0-46b3b1ee5adc": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "ruleEngineExecutionCountHourly", + "type": "timeseries", + "label": "{i18n:api-usage.rule-engine-executions}", + "color": "#AB00FF", + "settings": { + "yAxisId": "default", + "showInLegend": true, + "dataHiddenByDefault": false, + "type": "bar", + "lineSettings": { + "showLine": true, + "step": false, + "stepType": "start", + "smooth": false, + "lineType": "solid", + "lineWidth": 2, + "showPoints": false, + "showPointLabel": false, + "pointLabelPosition": "top", + "pointLabelFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "pointLabelColor": "rgba(0, 0, 0, 0.76)", + "enablePointLabelBackground": false, + "pointLabelBackground": "rgba(255,255,255,0.56)", + "pointShape": "emptyCircle", + "pointSize": 4, + "fillAreaSettings": { + "type": "none", + "opacity": 0.4, + "gradient": { + "start": 100, + "end": 0 + } + } + }, + "barSettings": { + "showBorder": false, + "borderWidth": 2, + "borderRadius": 0, + "showLabel": false, + "labelPosition": "top", + "labelFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.76)", + "enableLabelBackground": false, + "labelBackground": "rgba(255,255,255,0.56)", + "backgroundSettings": { + "type": "none", + "opacity": 0.4, + "gradient": { + "start": 100, + "end": 0 + } + } + }, + "comparisonSettings": { + "showValuesForComparison": false, + "comparisonValuesLabel": "", + "color": "" + } + }, + "_hash": 0.01948850513940492, + "aggregationType": null, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null + } + ], + "alarmFilterConfig": { + "statusList": [ + "ACTIVE" + ] + } + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 1, + "history": { + "historyType": 0, + "timewindowMs": 2592000000, + "interval": 86400000, + "fixedTimewindow": { + "startTimeMs": 1709729389667, + "endTimeMs": 1709815789667 + }, + "quickInterval": "CURRENT_DAY" + }, + "aggregation": { + "type": "SUM", + "limit": 25000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 1800000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.rule-engine-daily-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": { + "headerButton": [ + { + "name": "{i18n:api-usage.view-statistics}", + "buttonType": "icon", + "icon": "show_chart", + "buttonColor": "rgba(0, 0, 0, 0.87)", + "customButtonStyle": {}, + "useShowWidgetActionFunction": null, + "showWidgetActionFunction": "return true;", + "type": "updateDashboardState", + "targetDashboardStateId": "rule_engine_statistics", + "setEntityId": false, + "stateEntityParamName": null, + "openRightLayout": false, + "openInSeparateDialog": false, + "openInPopover": false, + "id": "2592147a-3f62-987a-78c0-cdb775fb4233" + } + ] + }, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "84fbe63a-bcb6-7bc1-8af0-46b3b1ee5adc" + }, + "43a2b982-6c02-d9bd-71ee-34e8e6cf8893": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "ruleEngineExecutionCount", + "type": "timeseries", + "label": "{i18n:api-usage.rule-engine-executions}", + "color": "#AB00FF", + "settings": { + "yAxisId": "default", + "showInLegend": true, + "dataHiddenByDefault": false, + "type": "bar", + "lineSettings": { + "showLine": true, + "step": false, + "stepType": "start", + "smooth": false, + "lineType": "solid", + "lineWidth": 2, + "showPoints": false, + "showPointLabel": false, + "pointLabelPosition": "top", + "pointLabelFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "pointLabelColor": "rgba(0, 0, 0, 0.76)", + "enablePointLabelBackground": false, + "pointLabelBackground": "rgba(255,255,255,0.56)", + "pointShape": "emptyCircle", + "pointSize": 4, + "fillAreaSettings": { + "type": "none", + "opacity": 0.4, + "gradient": { + "start": 100, + "end": 0 + } + } + }, + "barSettings": { + "showBorder": false, + "borderWidth": 2, + "borderRadius": 0, + "showLabel": false, + "labelPosition": "top", + "labelFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.76)", + "enableLabelBackground": false, + "labelBackground": "rgba(255,255,255,0.56)", + "backgroundSettings": { + "type": "none", + "opacity": 0.4, + "gradient": { + "start": 100, + "end": 0 + } + } + }, + "comparisonSettings": { + "showValuesForComparison": false, + "comparisonValuesLabel": "", + "color": "" + } + }, + "_hash": 0.5125470598651091, + "aggregationType": null, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null + } + ], + "alarmFilterConfig": { + "statusList": [ + "ACTIVE" + ] + } + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 1, + "realtime": { + "realtimeType": 0, + "interval": 1000, + "timewindowMs": 60000, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideQuickInterval": false + }, + "history": { + "historyType": 0, + "interval": 2592000000, + "timewindowMs": 31536000000, + "fixedTimewindow": null, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideFixedInterval": false, + "hideQuickInterval": false + }, + "aggregation": { + "type": "NONE", + "limit": 25000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 1800000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.rule-engine-monthly-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": { + "headerButton": [ + { + "name": "{i18n:api-usage.view-statistics}", + "buttonType": "icon", + "icon": "show_chart", + "buttonColor": "rgba(0, 0, 0, 0.87)", + "customButtonStyle": {}, + "useShowWidgetActionFunction": null, + "showWidgetActionFunction": "return true;", + "type": "updateDashboardState", + "targetDashboardStateId": "rule_engine_statistics", + "setEntityId": false, + "stateEntityParamName": null, + "openRightLayout": false, + "openInSeparateDialog": false, + "openInPopover": false, + "id": "b6ba96cf-48b8-f40f-f010-10b95e7dc819" + } + ] + }, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "43a2b982-6c02-d9bd-71ee-34e8e6cf8893" + }, + "76fe83c9-c30f-00a5-6299-40c759ca6705": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "jsExecutionCountHourly", + "type": "timeseries", + "label": "{i18n:api-usage.javascript-function-executions}", + "color": "#FF9900", + "settings": { + "excludeFromStacking": false, + "hideDataByDefault": false, + "disableDataHiding": false, + "removeFromLegend": false, + "showLines": false, + "fillLines": false, + "showPoints": false, + "showPointShape": "circle", + "pointShapeFormatter": "", + "showPointsLineWidth": 5, + "showPointsRadius": 3, + "showSeparateAxis": false, + "axisPosition": "left", + "thresholds": [ + { + "thresholdValueSource": "predefinedValue" + } + ], + "comparisonSettings": { + "showValuesForComparison": true + }, + "type": "bar", + "yAxisId": "default" + }, + "_hash": 0.0661644137210089, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null, + "aggregationType": null + } + ], + "alarmFilterConfig": { + "statusList": [ + "ACTIVE" + ] + } + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 0, + "realtime": { + "realtimeType": 0, + "interval": 3600000, + "timewindowMs": 86400000, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideQuickInterval": false + }, + "history": { + "historyType": 0, + "interval": 86400000, + "timewindowMs": 2592000000, + "fixedTimewindow": null, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideFixedInterval": false, + "hideQuickInterval": false + }, + "aggregation": { + "type": "SUM", + "limit": 25000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 1800000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.javascript-function-executions-hourly-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": {}, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "76fe83c9-c30f-00a5-6299-40c759ca6705" + }, + "a43598d1-7bfd-f329-ee61-c343f34f069f": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "jsExecutionCountHourly", + "type": "timeseries", + "label": "{i18n:api-usage.javascript-function-executions}", + "color": "#FF9900", + "settings": { + "excludeFromStacking": false, + "hideDataByDefault": false, + "disableDataHiding": false, + "removeFromLegend": false, + "showLines": false, + "fillLines": false, + "showPoints": false, + "showPointShape": "circle", + "pointShapeFormatter": "", + "showPointsLineWidth": 5, + "showPointsRadius": 3, + "showSeparateAxis": false, + "axisPosition": "left", + "thresholds": [ + { + "thresholdValueSource": "predefinedValue" + } + ], + "comparisonSettings": { + "showValuesForComparison": true + }, + "type": "bar", + "yAxisId": "default" + }, + "_hash": 0.0661644137210089, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null, + "aggregationType": null + } + ], + "alarmFilterConfig": { + "statusList": [ + "ACTIVE" + ] + } + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 1, + "history": { + "historyType": 0, + "timewindowMs": 2592000000, + "interval": 86400000, + "fixedTimewindow": { + "startTimeMs": 1709729389667, + "endTimeMs": 1709815789667 + }, + "quickInterval": "CURRENT_DAY" + }, + "aggregation": { + "type": "SUM", + "limit": 25000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 1800000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.javascript-function-executions-daily-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": {}, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "a43598d1-7bfd-f329-ee61-c343f34f069f" + }, + "3ebd62a8-dcb7-c96b-8571-e61084248f5b": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "jsExecutionCount", + "type": "timeseries", + "label": "{i18n:api-usage.javascript-function-executions}", + "color": "#FF9900", + "settings": { + "excludeFromStacking": false, + "hideDataByDefault": false, + "disableDataHiding": false, + "removeFromLegend": false, + "showLines": false, + "fillLines": false, + "showPoints": false, + "showPointShape": "circle", + "pointShapeFormatter": "", + "showPointsLineWidth": 5, + "showPointsRadius": 3, + "showSeparateAxis": false, + "axisPosition": "left", + "thresholds": [ + { + "thresholdValueSource": "predefinedValue" + } + ], + "comparisonSettings": { + "showValuesForComparison": true + }, + "type": "bar", + "yAxisId": "default" + }, + "_hash": 0.0661644137210089, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null, + "aggregationType": null + } + ] + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 1, + "realtime": { + "realtimeType": 0, + "interval": 1000, + "timewindowMs": 60000, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideQuickInterval": false + }, + "history": { + "historyType": 0, + "interval": 2592000000, + "timewindowMs": 31536000000, + "fixedTimewindow": null, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideFixedInterval": false, + "hideQuickInterval": false + }, + "aggregation": { + "type": "NONE", + "limit": 25000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 1800000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.javascript-function-executions-monthly-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": {}, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "3ebd62a8-dcb7-c96b-8571-e61084248f5b" + }, + "88e25971-e5cb-eebb-3c7c-1ce33a8a38f4": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "tbelExecutionCountHourly", + "type": "timeseries", + "label": "{i18n:api-usage.tbel-function-executions}", + "color": "#4CAF50", + "settings": { + "excludeFromStacking": false, + "hideDataByDefault": false, + "disableDataHiding": false, + "removeFromLegend": false, + "showLines": false, + "fillLines": false, + "showPoints": false, + "showPointShape": "circle", + "pointShapeFormatter": "", + "showPointsLineWidth": 5, + "showPointsRadius": 3, + "showSeparateAxis": false, + "axisPosition": "left", + "thresholds": [ + { + "thresholdValueSource": "predefinedValue" + } + ], + "comparisonSettings": { + "showValuesForComparison": true + }, + "type": "bar", + "yAxisId": "default" + }, + "_hash": 0.0661644137210089, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null, + "aggregationType": null + } + ], + "alarmFilterConfig": { + "statusList": [ + "ACTIVE" + ] + } + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 0, + "realtime": { + "realtimeType": 0, + "interval": 3600000, + "timewindowMs": 86400000, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideQuickInterval": false + }, + "history": { + "historyType": 0, + "interval": 86400000, + "timewindowMs": 2592000000, + "fixedTimewindow": null, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideFixedInterval": false, + "hideQuickInterval": false + }, + "aggregation": { + "type": "SUM", + "limit": 25000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 1800000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.tbel-function-executions-hourly-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": {}, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "88e25971-e5cb-eebb-3c7c-1ce33a8a38f4" + }, + "a1b5731c-e3b3-8cfb-7c50-3abcdce891d2": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "tbelExecutionCountHourly", + "type": "timeseries", + "label": "{i18n:api-usage.tbel-function-executions}", + "color": "#4CAF50", + "settings": { + "excludeFromStacking": false, + "hideDataByDefault": false, + "disableDataHiding": false, + "removeFromLegend": false, + "showLines": false, + "fillLines": false, + "showPoints": false, + "showPointShape": "circle", + "pointShapeFormatter": "", + "showPointsLineWidth": 5, + "showPointsRadius": 3, + "showSeparateAxis": false, + "axisPosition": "left", + "thresholds": [ + { + "thresholdValueSource": "predefinedValue" + } + ], + "comparisonSettings": { + "showValuesForComparison": true + }, + "type": "bar", + "yAxisId": "default" + }, + "_hash": 0.0661644137210089, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null, + "aggregationType": null + } + ], + "alarmFilterConfig": { + "statusList": [ + "ACTIVE" + ] + } + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 1, + "history": { + "historyType": 0, + "timewindowMs": 2592000000, + "interval": 86400000, + "fixedTimewindow": { + "startTimeMs": 1709729389667, + "endTimeMs": 1709815789667 + }, + "quickInterval": "CURRENT_DAY" + }, + "aggregation": { + "type": "SUM", + "limit": 25000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 1800000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.tbel-function-executions-daily-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": {}, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "a1b5731c-e3b3-8cfb-7c50-3abcdce891d2" + }, + "efc8d4e9-dee2-b677-c378-c1a666543bf4": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "tbelExecutionCount", + "type": "timeseries", + "label": "{i18n:api-usage.tbel-function-executions}", + "color": "#4CAF50", + "settings": { + "excludeFromStacking": false, + "hideDataByDefault": false, + "disableDataHiding": false, + "removeFromLegend": false, + "showLines": false, + "fillLines": false, + "showPoints": false, + "showPointShape": "circle", + "pointShapeFormatter": "", + "showPointsLineWidth": 5, + "showPointsRadius": 3, + "showSeparateAxis": false, + "axisPosition": "left", + "thresholds": [ + { + "thresholdValueSource": "predefinedValue" + } + ], + "comparisonSettings": { + "showValuesForComparison": true + }, + "type": "bar", + "yAxisId": "default" + }, + "_hash": 0.0661644137210089, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null, + "aggregationType": null + } + ] + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 1, + "realtime": { + "realtimeType": 0, + "interval": 1000, + "timewindowMs": 60000, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideQuickInterval": false + }, + "history": { + "historyType": 0, + "interval": 2592000000, + "timewindowMs": 31536000000, + "fixedTimewindow": null, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideFixedInterval": false, + "hideQuickInterval": false + }, + "aggregation": { + "type": "NONE", + "limit": 25000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 1800000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.tbel-function-executions-monthly-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": {}, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "efc8d4e9-dee2-b677-c378-c1a666543bf4" + }, + "61a23bd5-329f-aae7-3168-8a14a51dc10b": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "storageDataPointsCountHourly", + "type": "timeseries", + "label": "{i18n:api-usage.data-points-storage-days}", + "color": "#1039EE", + "settings": { + "excludeFromStacking": false, + "hideDataByDefault": false, + "disableDataHiding": false, + "removeFromLegend": false, + "showLines": false, + "fillLines": false, + "showPoints": false, + "showPointShape": "circle", + "pointShapeFormatter": "", + "showPointsLineWidth": 5, + "showPointsRadius": 3, + "showSeparateAxis": false, + "axisPosition": "left", + "thresholds": [ + { + "thresholdValueSource": "predefinedValue" + } + ], + "comparisonSettings": { + "showValuesForComparison": true + }, + "type": "bar", + "yAxisId": "default" + }, + "_hash": 0.0661644137210089, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null, + "aggregationType": null + } + ], + "alarmFilterConfig": { + "statusList": [ + "ACTIVE" + ] + } + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 0, + "realtime": { + "realtimeType": 0, + "interval": 3600000, + "timewindowMs": 86400000, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideQuickInterval": false + }, + "history": { + "historyType": 0, + "interval": 86400000, + "timewindowMs": 2592000000, + "fixedTimewindow": null, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideFixedInterval": false, + "hideQuickInterval": false + }, + "aggregation": { + "type": "SUM", + "limit": 25000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 1800000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.data-points-storage-days-hourly-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": {}, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "61a23bd5-329f-aae7-3168-8a14a51dc10b" + }, + "1249d3e2-6b3a-4e4a-65e9-6ed22959871e": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "storageDataPointsCountHourly", + "type": "timeseries", + "label": "{i18n:api-usage.data-points-storage-days}", + "color": "#1039EE", + "settings": { + "excludeFromStacking": false, + "hideDataByDefault": false, + "disableDataHiding": false, + "removeFromLegend": false, + "showLines": false, + "fillLines": false, + "showPoints": false, + "showPointShape": "circle", + "pointShapeFormatter": "", + "showPointsLineWidth": 5, + "showPointsRadius": 3, + "showSeparateAxis": false, + "axisPosition": "left", + "thresholds": [ + { + "thresholdValueSource": "predefinedValue" + } + ], + "comparisonSettings": { + "showValuesForComparison": true + }, + "type": "bar", + "yAxisId": "default" + }, + "_hash": 0.0661644137210089, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null, + "aggregationType": null + } + ], + "alarmFilterConfig": { + "statusList": [ + "ACTIVE" + ] + } + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 1, + "history": { + "historyType": 0, + "timewindowMs": 2592000000, + "interval": 86400000, + "fixedTimewindow": { + "startTimeMs": 1709729389667, + "endTimeMs": 1709815789667 + }, + "quickInterval": "CURRENT_DAY" + }, + "aggregation": { + "type": "SUM", + "limit": 25000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 1800000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.data-points-storage-days-daily-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": {}, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "1249d3e2-6b3a-4e4a-65e9-6ed22959871e" + }, + "c2f2da29-741d-54f6-5f1d-6f6ae616ea02": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "storageDataPointsCount", + "type": "timeseries", + "label": "{i18n:api-usage.data-points-storage-days}", + "color": "#1039EE", + "settings": { + "excludeFromStacking": false, + "hideDataByDefault": false, + "disableDataHiding": false, + "removeFromLegend": false, + "showLines": false, + "fillLines": false, + "showPoints": false, + "showPointShape": "circle", + "pointShapeFormatter": "", + "showPointsLineWidth": 5, + "showPointsRadius": 3, + "showSeparateAxis": false, + "axisPosition": "left", + "thresholds": [ + { + "thresholdValueSource": "predefinedValue" + } + ], + "comparisonSettings": { + "showValuesForComparison": true + }, + "type": "bar", + "yAxisId": "default" + }, + "_hash": 0.0661644137210089, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null, + "aggregationType": null + } + ], + "alarmFilterConfig": { + "statusList": [ + "ACTIVE" + ] + } + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 1, + "realtime": { + "realtimeType": 0, + "interval": 1000, + "timewindowMs": 60000, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideQuickInterval": false + }, + "history": { + "historyType": 0, + "interval": 2592000000, + "timewindowMs": 31536000000, + "fixedTimewindow": null, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideFixedInterval": false, + "hideQuickInterval": false + }, + "aggregation": { + "type": "NONE", + "limit": 25000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 1800000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.data-points-storage-days-monthly-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": {}, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "c2f2da29-741d-54f6-5f1d-6f6ae616ea02" + }, + "8e07dbe5-aa7a-19c1-c470-5f055df948a7": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "createdAlarmsCountHourly", + "type": "timeseries", + "label": "{i18n:api-usage.alarms-created}", + "color": "#D35A00", + "settings": { + "excludeFromStacking": false, + "hideDataByDefault": false, + "disableDataHiding": false, + "removeFromLegend": false, + "showLines": false, + "fillLines": false, + "showPoints": false, + "showPointShape": "circle", + "pointShapeFormatter": "", + "showPointsLineWidth": 5, + "showPointsRadius": 3, + "showSeparateAxis": false, + "axisPosition": "left", + "thresholds": [ + { + "thresholdValueSource": "predefinedValue" + } + ], + "comparisonSettings": { + "showValuesForComparison": true + }, + "type": "bar", + "yAxisId": "default" + }, + "_hash": 0.0661644137210089, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null, + "aggregationType": null + } + ], + "alarmFilterConfig": { + "statusList": [ + "ACTIVE" + ] + } + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 0, + "realtime": { + "realtimeType": 0, + "interval": 3600000, + "timewindowMs": 86400000, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideQuickInterval": false + }, + "history": { + "historyType": 0, + "interval": 86400000, + "timewindowMs": 2592000000, + "fixedTimewindow": null, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideFixedInterval": false, + "hideQuickInterval": false + }, + "aggregation": { + "type": "SUM", + "limit": 25000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 1800000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.alarms-created-hourly-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": {}, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "8e07dbe5-aa7a-19c1-c470-5f055df948a7" + }, + "e0fe9887-d61c-7813-05a7-f60811e5c5bf": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "createdAlarmsCountHourly", + "type": "timeseries", + "label": "{i18n:api-usage.alarms-created}", + "color": "#D35A00", + "settings": { + "excludeFromStacking": false, + "hideDataByDefault": false, + "disableDataHiding": false, + "removeFromLegend": false, + "showLines": false, + "fillLines": false, + "showPoints": false, + "showPointShape": "circle", + "pointShapeFormatter": "", + "showPointsLineWidth": 5, + "showPointsRadius": 3, + "showSeparateAxis": false, + "axisPosition": "left", + "thresholds": [ + { + "thresholdValueSource": "predefinedValue" + } + ], + "comparisonSettings": { + "showValuesForComparison": true + }, + "type": "bar", + "yAxisId": "default" + }, + "_hash": 0.0661644137210089, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null, + "aggregationType": null + } + ], + "alarmFilterConfig": { + "statusList": [ + "ACTIVE" + ] + } + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 1, + "history": { + "historyType": 0, + "timewindowMs": 2592000000, + "interval": 86400000, + "fixedTimewindow": { + "startTimeMs": 1709729389667, + "endTimeMs": 1709815789667 + }, + "quickInterval": "CURRENT_DAY" + }, + "aggregation": { + "type": "SUM", + "limit": 25000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 1800000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.alarms-created-daily-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": {}, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "e0fe9887-d61c-7813-05a7-f60811e5c5bf" + }, + "99a40c35-c232-16c5-c42f-3cc80ddb9243": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "createdAlarmsCount", + "type": "timeseries", + "label": "{i18n:api-usage.alarms-created}", + "color": "#D35A00", + "settings": { + "excludeFromStacking": false, + "hideDataByDefault": false, + "disableDataHiding": false, + "removeFromLegend": false, + "showLines": false, + "fillLines": false, + "showPoints": false, + "showPointShape": "circle", + "pointShapeFormatter": "", + "showPointsLineWidth": 5, + "showPointsRadius": 3, + "showSeparateAxis": false, + "axisPosition": "left", + "thresholds": [ + { + "thresholdValueSource": "predefinedValue" + } + ], + "comparisonSettings": { + "showValuesForComparison": true + }, + "type": "bar", + "yAxisId": "default" + }, + "_hash": 0.0661644137210089, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null, + "aggregationType": null + } + ], + "alarmFilterConfig": { + "statusList": [ + "ACTIVE" + ] + } + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 1, + "realtime": { + "realtimeType": 0, + "interval": 1000, + "timewindowMs": 60000, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideQuickInterval": false + }, + "history": { + "historyType": 0, + "interval": 2592000000, + "timewindowMs": 31536000000, + "fixedTimewindow": null, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideFixedInterval": false, + "hideQuickInterval": false + }, + "aggregation": { + "type": "NONE", + "limit": 25000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 1800000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.alarms-created-monthly-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": {}, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "99a40c35-c232-16c5-c42f-3cc80ddb9243" + }, + "407f7630-406e-9c24-cb3d-b1cbdd190f15": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "emailCountHourly", + "type": "timeseries", + "label": "{i18n:api-usage.email-messages}", + "color": "#F36021", + "settings": { + "excludeFromStacking": false, + "hideDataByDefault": false, + "disableDataHiding": false, + "removeFromLegend": false, + "showLines": false, + "fillLines": false, + "showPoints": false, + "showPointShape": "circle", + "pointShapeFormatter": "", + "showPointsLineWidth": 5, + "showPointsRadius": 3, + "showSeparateAxis": false, + "axisPosition": "left", + "thresholds": [ + { + "thresholdValueSource": "predefinedValue" + } + ], + "comparisonSettings": { + "showValuesForComparison": true + }, + "type": "bar", + "yAxisId": "default" + }, + "_hash": 0.0661644137210089, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null, + "aggregationType": null + } + ], + "alarmFilterConfig": { + "statusList": [ + "ACTIVE" + ] + } + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 0, + "realtime": { + "realtimeType": 0, + "interval": 3600000, + "timewindowMs": 86400000, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideQuickInterval": false + }, + "history": { + "historyType": 0, + "interval": 86400000, + "timewindowMs": 2592000000, + "fixedTimewindow": null, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideFixedInterval": false, + "hideQuickInterval": false + }, + "aggregation": { + "type": "SUM", + "limit": 25000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 1800000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.emails-hourly-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": {}, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "407f7630-406e-9c24-cb3d-b1cbdd190f15" + }, + "b12fb875-89fe-af4c-b344-bf4178de419f": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "emailCountHourly", + "type": "timeseries", + "label": "{i18n:api-usage.email-messages}", + "color": "#F36021", + "settings": { + "excludeFromStacking": false, + "hideDataByDefault": false, + "disableDataHiding": false, + "removeFromLegend": false, + "showLines": false, + "fillLines": false, + "showPoints": false, + "showPointShape": "circle", + "pointShapeFormatter": "", + "showPointsLineWidth": 5, + "showPointsRadius": 3, + "showSeparateAxis": false, + "axisPosition": "left", + "thresholds": [ + { + "thresholdValueSource": "predefinedValue" + } + ], + "comparisonSettings": { + "showValuesForComparison": true + }, + "type": "bar", + "yAxisId": "default" + }, + "_hash": 0.0661644137210089, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null, + "aggregationType": null + } + ], + "alarmFilterConfig": { + "statusList": [ + "ACTIVE" + ] + } + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 1, + "history": { + "historyType": 0, + "timewindowMs": 2592000000, + "interval": 86400000, + "fixedTimewindow": { + "startTimeMs": 1709729389667, + "endTimeMs": 1709815789667 + }, + "quickInterval": "CURRENT_DAY" + }, + "aggregation": { + "type": "SUM", + "limit": 25000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 1800000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.emails-daily-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": {}, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "b12fb875-89fe-af4c-b344-bf4178de419f" + }, + "0b00099d-d131-3e8b-97ce-c4b8d7bcab1f": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "emailCount", + "type": "timeseries", + "label": "{i18n:api-usage.email-messages}", + "color": "#F36021", + "settings": { + "excludeFromStacking": false, + "hideDataByDefault": false, + "disableDataHiding": false, + "removeFromLegend": false, + "showLines": false, + "fillLines": false, + "showPoints": false, + "showPointShape": "circle", + "pointShapeFormatter": "", + "showPointsLineWidth": 5, + "showPointsRadius": 3, + "showSeparateAxis": false, + "axisPosition": "left", + "thresholds": [ + { + "thresholdValueSource": "predefinedValue" + } + ], + "comparisonSettings": { + "showValuesForComparison": true + }, + "type": "bar", + "yAxisId": "default" + }, + "_hash": 0.0661644137210089, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null, + "aggregationType": null + } + ] + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 1, + "realtime": { + "realtimeType": 0, + "interval": 1000, + "timewindowMs": 60000, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideQuickInterval": false + }, + "history": { + "historyType": 0, + "interval": 2592000000, + "timewindowMs": 31536000000, + "fixedTimewindow": null, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideFixedInterval": false, + "hideQuickInterval": false + }, + "aggregation": { + "type": "NONE", + "limit": 25000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 1800000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.emails-monthly-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": {}, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "0b00099d-d131-3e8b-97ce-c4b8d7bcab1f" + }, + "5648a56e-5a33-3018-92bd-d8e3dbe8aeee": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "smsCountHourly", + "type": "timeseries", + "label": "{i18n:api-usage.sms-messages}", + "color": "#F36021", + "settings": { + "excludeFromStacking": false, + "hideDataByDefault": false, + "disableDataHiding": false, + "removeFromLegend": false, + "showLines": false, + "fillLines": false, + "showPoints": false, + "showPointShape": "circle", + "pointShapeFormatter": "", + "showPointsLineWidth": 5, + "showPointsRadius": 3, + "showSeparateAxis": false, + "axisPosition": "left", + "thresholds": [ + { + "thresholdValueSource": "predefinedValue" + } + ], + "comparisonSettings": { + "showValuesForComparison": true + }, + "type": "bar", + "yAxisId": "default" + }, + "_hash": 0.0661644137210089, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null, + "aggregationType": null + } + ], + "alarmFilterConfig": { + "statusList": [ + "ACTIVE" + ] + } + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 0, + "realtime": { + "realtimeType": 0, + "interval": 3600000, + "timewindowMs": 86400000, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideQuickInterval": false + }, + "history": { + "historyType": 0, + "interval": 86400000, + "timewindowMs": 2592000000, + "fixedTimewindow": null, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideFixedInterval": false, + "hideQuickInterval": false + }, + "aggregation": { + "type": "SUM", + "limit": 25000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 1800000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.sms-messages-hourly-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": {}, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "5648a56e-5a33-3018-92bd-d8e3dbe8aeee" + }, + "ab5518c1-34d6-7e17-04b4-6520496d5fe1": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "smsCountHourly", + "type": "timeseries", + "label": "{i18n:api-usage.sms-messages}", + "color": "#F36021", + "settings": { + "excludeFromStacking": false, + "hideDataByDefault": false, + "disableDataHiding": false, + "removeFromLegend": false, + "showLines": false, + "fillLines": false, + "showPoints": false, + "showPointShape": "circle", + "pointShapeFormatter": "", + "showPointsLineWidth": 5, + "showPointsRadius": 3, + "showSeparateAxis": false, + "axisPosition": "left", + "thresholds": [ + { + "thresholdValueSource": "predefinedValue" + } + ], + "comparisonSettings": { + "showValuesForComparison": true + }, + "type": "bar", + "yAxisId": "default" + }, + "_hash": 0.0661644137210089, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null, + "aggregationType": null + } + ], + "alarmFilterConfig": { + "statusList": [ + "ACTIVE" + ] + } + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 1, + "history": { + "historyType": 0, + "timewindowMs": 2592000000, + "interval": 86400000, + "fixedTimewindow": { + "startTimeMs": 1709729389667, + "endTimeMs": 1709815789667 + }, + "quickInterval": "CURRENT_DAY" + }, + "aggregation": { + "type": "SUM", + "limit": 25000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 1800000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.sms-messages-daily-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": {}, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "ab5518c1-34d6-7e17-04b4-6520496d5fe1" + }, + "2e7326ac-98d3-e68c-b7cf-948118a3f140": { + "typeFullFqn": "system.time_series_chart", + "type": "timeseries", + "sizeX": 8, + "sizeY": 5, + "config": { + "datasources": [ + { + "type": "entity", + "name": null, + "entityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "filterId": null, + "dataKeys": [ + { + "name": "smsCount", + "type": "timeseries", + "label": "{i18n:api-usage.sms-messages}", + "color": "#F36021", + "settings": { + "excludeFromStacking": false, + "hideDataByDefault": false, + "disableDataHiding": false, + "removeFromLegend": false, + "showLines": false, + "fillLines": false, + "showPoints": false, + "showPointShape": "circle", + "pointShapeFormatter": "", + "showPointsLineWidth": 5, + "showPointsRadius": 3, + "showSeparateAxis": false, + "axisPosition": "left", + "thresholds": [ + { + "thresholdValueSource": "predefinedValue" + } + ], + "comparisonSettings": { + "showValuesForComparison": true + }, + "type": "bar", + "yAxisId": "default" + }, + "_hash": 0.0661644137210089, + "units": null, + "decimals": null, + "funcBody": null, + "usePostProcessing": null, + "postFuncBody": null, + "aggregationType": null + } + ] + } + ], + "timewindow": { + "hideAggregation": false, + "hideAggInterval": false, + "hideTimezone": false, + "selectedTab": 1, + "realtime": { + "realtimeType": 0, + "interval": 1000, + "timewindowMs": 60000, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideQuickInterval": false + }, + "history": { + "historyType": 0, + "interval": 2592000000, + "timewindowMs": 31536000000, + "fixedTimewindow": null, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideFixedInterval": false, + "hideQuickInterval": false + }, + "aggregation": { + "type": "NONE", + "limit": 25000 + }, + "timezone": null + }, + "showTitle": true, + "backgroundColor": "#FFFFFF", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0px", + "settings": { + "yAxes": { + "default": { + "units": null, + "decimals": 0, + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "left", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormatter": "var rounder = Math.pow(10, 1);\nvar powers = [\n {key: 'Q', value: Math.pow(10, 15)},\n {key: 'T', value: Math.pow(10, 12)},\n {key: 'B', value: Math.pow(10, 9)},\n {key: 'M', value: Math.pow(10, 6)},\n {key: 'K', value: 1000}\n];\n\nvar key = '';\n\nfor (var i = 0; i < powers.length; i++) {\n var reduced = value / powers[i].value;\n reduced = Math.round(reduced * rounder) / rounder;\n if (reduced >= 1) {\n value = reduced;\n key = powers[i].key;\n break;\n }\n}\nreturn value + key;", + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)", + "id": "default", + "order": 0, + "min": null, + "max": null + } + }, + "thresholds": [], + "dataZoom": false, + "stack": false, + "xAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "bottom", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "noAggregationBarWidthSettings": { + "strategy": "group", + "groupWidth": { + "relative": true, + "relativeWidth": 6, + "absoluteWidth": 1800000 + }, + "barWidth": { + "relative": true, + "relativeWidth": 2, + "absoluteWidth": 1000 + } + }, + "showLegend": true, + "legendLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendLabelColor": "rgba(0, 0, 0, 0.76)", + "legendConfig": { + "direction": "column", + "position": "bottom", + "sortDataKeys": false, + "showMin": false, + "showMax": false, + "showAvg": false, + "showTotal": true, + "showLatest": false, + "valueFormat": null + }, + "showTooltip": true, + "tooltipTrigger": "axis", + "tooltipValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "tooltipValueColor": "rgba(0, 0, 0, 0.76)", + "tooltipShowDate": true, + "tooltipDateFormat": { + "format": "yyyy-MM-dd HH:mm:ss", + "lastUpdateAgo": false, + "custom": false, + "auto": true, + "autoDateFormatSettings": {} + }, + "tooltipDateFont": { + "family": "Roboto", + "size": 11, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipDateColor": "rgba(0, 0, 0, 0.76)", + "tooltipDateInterval": true, + "tooltipBackgroundColor": "rgba(255, 255, 255, 0.76)", + "tooltipBackgroundBlur": 4, + "animation": { + "animation": true, + "animationThreshold": 2000, + "animationDuration": 1000, + "animationEasing": "cubicOut", + "animationDelay": 0, + "animationDurationUpdate": 300, + "animationEasingUpdate": "cubicOut", + "animationDelayUpdate": 0 + }, + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "comparisonEnabled": false, + "timeForComparison": "previousInterval", + "comparisonCustomIntervalValue": 7200000, + "comparisonXAxis": { + "show": true, + "label": "", + "labelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "600", + "lineHeight": "1" + }, + "labelColor": "rgba(0, 0, 0, 0.54)", + "position": "top", + "showTickLabels": true, + "tickLabelFont": { + "family": "Roboto", + "size": 10, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "1" + }, + "tickLabelColor": "rgba(0, 0, 0, 0.54)", + "ticksFormat": {}, + "showTicks": true, + "ticksColor": "rgba(0, 0, 0, 0.54)", + "showLine": true, + "lineColor": "rgba(0, 0, 0, 0.54)", + "showSplitLines": true, + "splitLinesColor": "rgba(0, 0, 0, 0.12)" + }, + "grid": { + "show": false, + "backgroundColor": null, + "borderWidth": 1, + "borderColor": "#ccc" + }, + "legendColumnTitleFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "legendColumnTitleColor": "rgba(0, 0, 0, 0.38)", + "legendValueFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "500", + "lineHeight": "16px" + }, + "legendValueColor": "rgba(0, 0, 0, 0.87)", + "tooltipLabelFont": { + "family": "Roboto", + "size": 12, + "sizeUnit": "px", + "style": "normal", + "weight": "400", + "lineHeight": "16px" + }, + "tooltipLabelColor": "rgba(0, 0, 0, 0.76)", + "tooltipHideZeroValues": null, + "padding": "12px" + }, + "title": "{i18n:api-usage.sms-messages-monthly-activity}", + "dropShadow": true, + "enableFullscreen": true, + "titleStyle": null, + "configMode": "basic", + "actions": {}, + "showTitleIcon": false, + "titleIcon": "thermostat", + "iconColor": "#1F6BDD", + "useDashboardTimewindow": false, + "displayTimewindow": true, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": "Roboto", + "weight": "500", + "style": "normal", + "lineHeight": "24px" + }, + "titleColor": "rgba(0, 0, 0, 0.87)", + "titleTooltip": "", + "widgetStyle": {}, + "widgetCss": "", + "pageSize": 1024, + "units": "", + "decimals": null, + "noDataDisplayMessage": "", + "timewindowStyle": { + "showIcon": false, + "iconSize": "24px", + "icon": null, + "iconPosition": "left", + "font": { + "size": 12, + "sizeUnit": "px", + "family": "Roboto", + "weight": "400", + "style": "normal", + "lineHeight": "16px" + }, + "color": "rgba(0, 0, 0, 0.38)", + "displayTypePrefix": true + }, + "margin": "0px", + "borderRadius": "4px", + "iconSize": "0px" + }, + "row": 0, + "col": 0, + "id": "2e7326ac-98d3-e68c-b7cf-948118a3f140" + }, + "07e3a570-c961-b72d-3371-5b29f3617b73": { + "typeFullFqn": "system.api_usage", + "type": "latest", + "sizeX": 7.5, + "sizeY": 3, + "config": { + "datasources": [ + { + "type": "entity", + "name": "", + "dataKeys": [] + } + ], + "timewindow": { + "displayValue": "", + "selectedTab": 0, + "realtime": { + "realtimeType": 1, + "interval": 1000, + "timewindowMs": 60000, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideQuickInterval": false + }, + "history": { + "historyType": 0, + "interval": 1000, + "timewindowMs": 60000, + "fixedTimewindow": { + "startTimeMs": 1756302747649, + "endTimeMs": 1756389147649 + }, + "quickInterval": "CURRENT_DAY", + "hideInterval": false, + "hideLastInterval": false, + "hideFixedInterval": false, + "hideQuickInterval": false + }, + "aggregation": { + "type": "AVG", + "limit": 25000 + } + }, + "showTitle": true, + "backgroundColor": "#fff", + "color": "rgba(0, 0, 0, 0.87)", + "padding": "0", + "settings": { + "dsEntityAliasId": "40193437-33ac-3172-eefd-0b08eb849062", + "dataKeys": [ + { + "label": "{i18n:api-usage.transport-messages}", + "state": "transport_messages", + "status": { + "name": "transportApiState", + "label": "transportApiState", + "type": "timeseries", + "settings": {}, + "color": "#2196f3" + }, + "maxLimit": { + "name": "transportMsgLimit", + "label": "transportMsgLimit", + "type": "timeseries", + "settings": {}, + "color": "#2196f3" + }, + "current": { + "name": "transportMsgCount", + "label": "transportMsgCount", + "type": "timeseries", + "settings": {}, + "color": "#2196f3" + } + }, + { + "label": "{i18n:api-usage.transport-data-points}", + "state": "transport_data_points", + "status": { + "name": "transportApiState", + "label": "transportApiState", + "type": "timeseries", + "settings": {}, + "color": "#2196f3" + }, + "maxLimit": { + "name": "transportDataPointsLimit", + "label": "transportDataPointsLimit", + "type": "timeseries", + "settings": {}, + "color": "#2196f3" + }, + "current": { + "name": "transportDataPointsCount", + "label": "transportDataPointsCount", + "type": "timeseries", + "settings": {}, + "color": "#2196f3" + } + }, + { + "label": "{i18n:api-usage.rule-engine-executions}", + "state": "rule_engine_executions", + "status": { + "name": "ruleEngineApiState", + "label": "ruleEngineApiState", + "type": "timeseries", + "settings": {}, + "color": "#2196f3" + }, + "maxLimit": { + "name": "ruleEngineExecutionLimit", + "label": "ruleEngineExecutionLimit", + "type": "timeseries", + "settings": {}, + "color": "#2196f3" + }, + "current": { + "name": "ruleEngineExecutionCount", + "label": "ruleEngineExecutionCount", + "type": "timeseries", + "settings": {}, + "color": "#2196f3" + } + }, + { + "label": "{i18n:api-usage.javascript-function-executions}", + "state": "javascript_function_executions", + "status": { + "name": "jsExecutionApiState", + "label": "jsExecutionApiState", + "type": "timeseries", + "settings": {}, + "color": "#2196f3" + }, + "maxLimit": { + "name": "jsExecutionLimit", + "label": "jsExecutionLimit", + "type": "timeseries", + "settings": {}, + "color": "#2196f3" + }, + "current": { + "name": "jsExecutionCount", + "label": "jsExecutionCount", + "type": "timeseries", + "settings": {}, + "color": "#2196f3" + } + }, + { + "label": "{i18n:api-usage.tbel-function-executions}", + "state": "tbel_function_executions", + "status": { + "name": "tbelExecutionApiState", + "label": "tbelExecutionApiState", + "type": "timeseries", + "settings": {}, + "color": "#2196f3" + }, + "maxLimit": { + "name": "tbelExecutionLimit", + "label": "tbelExecutionLimit", + "type": "timeseries", + "settings": {}, + "color": "#2196f3" + }, + "current": { + "name": "tbelExecutionCount", + "label": "tbelExecutionCount", + "type": "timeseries", + "settings": {}, + "color": "#2196f3" + } + }, + { + "label": "{i18n:api-usage.data-points-storage-days}", + "state": "data_points_storage_days", + "status": { + "name": "dbApiState", + "label": "dbApiState", + "type": "timeseries", + "settings": {}, + "color": "#2196f3" + }, + "maxLimit": { + "name": "storageDataPointsLimit", + "label": "storageDataPointsLimit", + "type": "timeseries", + "settings": {}, + "color": "#2196f3" + }, + "current": { + "name": "storageDataPointsCount", + "label": "storageDataPointsCount", + "type": "timeseries", + "settings": {}, + "color": "#2196f3" + } + }, + { + "label": "{i18n:api-usage.alarms-created}", + "state": "alarms_created", + "status": { + "name": "alarmApiState", + "label": "alarmApiState", + "type": "timeseries", + "settings": {}, + "color": "#2196f3" + }, + "maxLimit": { + "name": "createdAlarmsLimit", + "label": "createdAlarmsLimit", + "type": "timeseries", + "settings": {}, + "color": "#2196f3" + }, + "current": { + "name": "createdAlarmsCount", + "label": "createdAlarmsCount", + "type": "timeseries", + "settings": {}, + "color": "#2196f3" + } + }, + { + "label": "{i18n:api-usage.emails}", + "state": "emails", + "status": { + "name": "emailApiState", + "label": "emailApiState", + "type": "timeseries", + "settings": {}, + "color": "#2196f3" + }, + "maxLimit": { + "name": "emailLimit", + "label": "emailLimit", + "type": "timeseries", + "settings": {}, + "color": "#2196f3" + }, + "current": { + "name": "emailCount", + "label": "emailCount", + "type": "timeseries", + "settings": {}, + "color": "#2196f3" + } + }, + { + "label": "{i18n:api-usage.sms}", + "state": "sms", + "status": { + "name": "notificationApiState", + "label": "notificationApiState", + "type": "timeseries", + "settings": {}, + "color": "#2196f3" + }, + "maxLimit": { + "name": "smsLimit", + "label": "smsLimit", + "type": "timeseries", + "settings": {}, + "color": "#2196f3" + }, + "current": { + "name": "smsCount", + "label": "smsCount", + "type": "timeseries", + "settings": {}, + "color": "#2196f3" + } + } + ], + "targetDashboardState": "default", + "background": { + "type": "color", + "color": "#fff", + "overlay": { + "enabled": false, + "color": "rgba(255,255,255,0.72)", + "blur": 3 + } + }, + "padding": "0" + }, + "title": "{i18n:api-usage.api-usage}", + "decimals": null, + "showTitleIcon": false, + "titleTooltip": "", + "dropShadow": true, + "enableFullscreen": false, + "widgetStyle": {}, + "widgetCss": ".tb-widget-header {\n height: 48px;\n align-items: center !important;\n padding: 5px 10px 0 10px;\n}", + "titleStyle": {}, + "pageSize": 1024, + "noDataDisplayMessage": "", + "actions": { + "headerButton": [ + { + "name": "Go back", + "buttonType": "stroked", + "showIcon": true, + "icon": "undo", + "buttonColor": "#305680", + "buttonBorderColor": "#0000001F", + "customButtonStyle": { + "padding": "0 16px" + }, + "useShowWidgetActionFunction": true, + "showWidgetActionFunction": "console.log(widgetContext.stateController.getStateId(), widgetContext.settings.targetDashboardState)\nreturn widgetContext.stateController.getStateId() !== widgetContext.settings.targetDashboardState && widgetContext.settings.targetDashboardState;", + "type": "custom", + "customFunction": "const state = widgetContext.settings.targetDashboardState?.length ? widgetContext.settings.targetDashboardState : 'default';\nwidgetContext.stateController.updateState(state, widgetContext.stateController.getStateParams(), false);", + "openInSeparateDialog": false, + "openInPopover": false, + "id": "1ea1cca6-47d1-3539-d051-9535129fb12b" + } + ] + }, + "titleFont": { + "size": 16, + "sizeUnit": "px", + "family": null, + "weight": "500", + "style": null, + "lineHeight": "21px" + }, + "borderRadius": "4px" + }, + "row": 0, + "col": 0, + "id": "07e3a570-c961-b72d-3371-5b29f3617b73" } }, "states": { @@ -8377,192 +13306,76 @@ "layouts": { "main": { "widgets": { - "aab68ab5-8e40-8694-c55c-8eb1c89b88fb": { - "sizeX": 4, - "sizeY": 2, + "07e3a570-c961-b72d-3371-5b29f3617b73": { + "sizeX": 24, + "sizeY": 39, "row": 0, "col": 0 - }, - "a84fa70a-ddfa-3b24-9aa4-cf9ce91f919a": { - "sizeX": 4, - "sizeY": 2, - "row": 0, - "col": 4 - }, - "d70d26d4-e22d-4ca9-9ea7-f9c87c093321": { - "sizeX": 4, - "sizeY": 2, - "row": 0, - "col": 8 - }, - "4d3ea95c-3188-9872-1817-2f989c7729e0": { - "sizeX": 4, - "sizeY": 2, - "row": 0, - "col": 12 - }, - "2d0d6ff6-cd59-51d4-b916-38e22cdd0702": { - "sizeX": 4, - "sizeY": 2, - "row": 0, - "col": 16 - }, - "120573cc-e246-eb49-7d80-68e5d3b3c0cc": { - "sizeX": 4, - "sizeY": 2, - "row": 0, - "col": 20 - }, - "63f99d90-23ab-f8c2-3290-1e693ded5a2e": { - "sizeX": 8, - "sizeY": 4, - "row": 2, - "col": 0 - }, - "a2b7e906-2d8a-41a8-99a6-409531bfa743": { - "sizeX": 8, - "sizeY": 4, - "row": 2, - "col": 8 - }, - "ca996b66-ab7e-f977-152c-98e4ebf2a901": { - "sizeX": 8, - "sizeY": 4, - "row": 2, - "col": 16 - }, - "a3c2f1bb-7d3a-f11c-7b3d-28cd84fdfe34": { - "sizeX": 8, - "sizeY": 4, - "row": 6, - "col": 0 - }, - "5cebd4f1-ff6e-62f9-025c-8e7583c3d66a": { - "sizeX": 8, - "sizeY": 4, - "row": 6, - "col": 8 - }, - "bc0c8840-a9b5-5583-de7b-9e9450f5d8fe": { - "sizeX": 8, - "sizeY": 4, - "row": 6, - "col": 16 } }, "gridSettings": { "backgroundColor": "#eeeeee", "color": "rgba(0,0,0,0.870588)", - "columns": 24, - "margin": 5, + "columns": 12, + "margin": 8, "backgroundSizeMode": "100%", "autoFillHeight": true, "backgroundImageUrl": null, - "mobileAutoFillHeight": false, + "mobileAutoFillHeight": true, "mobileRowHeight": 100, - "outerMargin": true + "outerMargin": true, + "layoutType": "divider", + "minColumns": 12, + "viewFormat": "grid", + "rowHeight": 70, + "layoutDimension": { + "type": "percentage", + "leftWidthPercentage": 30 + } } - } - } - }, - "transport": { - "name": "{i18n:api-usage.transport}", - "root": false, - "layouts": { - "main": { + }, + "right": { "widgets": { - "0b091dc3-eec3-847e-d0ad-fdf12d474e7a": { - "sizeX": 24, - "sizeY": 6, + "85240e8c-7af7-90a9-ad0a-726013c479a6": { + "sizeX": 7, + "sizeY": 5, "row": 0, "col": 0 }, - "536d7104-49f8-fde6-5827-61b8419f15ec": { - "sizeX": 24, - "sizeY": 6, - "row": 6, - "col": 0 - } - }, - "gridSettings": { - "backgroundColor": "#eeeeee", - "color": "rgba(0,0,0,0.870588)", - "columns": 24, - "margin": 5, - "backgroundSizeMode": "100%", - "autoFillHeight": true, - "backgroundImageUrl": null, - "mobileAutoFillHeight": false, - "mobileRowHeight": 70, - "outerMargin": true - } - } - } - }, - "rule_engine_execution": { - "name": "{i18n:api-usage.rule-engine-executions}", - "root": false, - "layouts": { - "main": { - "widgets": { - "c77e417c-ad9d-8e23-3ea1-c75edd653bc0": { - "sizeX": 24, - "sizeY": 6, + "d0a10a8f-8f48-f9d6-8306-d12af9b49690": { + "sizeX": 7, + "sizeY": 5, "row": 0, + "col": 7 + }, + "4544080d-9b6f-b592-9cd4-0e0335d33857": { + "sizeX": 7, + "sizeY": 5, + "row": 5, "col": 0 }, - "870904d2-d2e1-a1b9-ce56-b03fd47259b5": { - "sizeX": 24, - "sizeY": 6, - "row": 6, - "col": 0 + "5d0f2f57-499d-1324-8e1b-cfbc0b3149d2": { + "sizeX": 7, + "sizeY": 5, + "row": 5, + "col": 7 } }, "gridSettings": { + "layoutType": "divider", "backgroundColor": "#eeeeee", - "color": "rgba(0,0,0,0.870588)", - "columns": 24, - "margin": 5, + "columns": 12, + "margin": 8, + "outerMargin": true, "backgroundSizeMode": "100%", + "minColumns": 12, + "viewFormat": "grid", "autoFillHeight": true, + "rowHeight": 70, "backgroundImageUrl": null, "mobileAutoFillHeight": false, "mobileRowHeight": 70, - "outerMargin": true - } - } - } - }, - "telemetry_persistence": { - "name": "{i18n:api-usage.telemetry-persistence}", - "root": false, - "layouts": { - "main": { - "widgets": { - "7f4100d2-41be-4954-d353-1d45000dbbbb": { - "sizeX": 24, - "sizeY": 6, - "row": 0, - "col": 0 - }, - "226ef8c9-8488-3664-21ac-0b6217336202": { - "sizeX": 24, - "sizeY": 6, - "row": 6, - "col": 0 - } - }, - "gridSettings": { - "backgroundColor": "#eeeeee", - "color": "rgba(0,0,0,0.870588)", - "columns": 24, - "margin": 5, - "backgroundSizeMode": "100%", - "autoFillHeight": true, - "backgroundImageUrl": null, - "mobileAutoFillHeight": false, - "mobileRowHeight": 70, - "outerMargin": true + "mobileDisplayLayoutFirst": false } } } @@ -8596,59 +13409,601 @@ "backgroundColor": "#eeeeee", "color": "rgba(0,0,0,0.870588)", "columns": 24, - "margin": 5, + "margin": 8, "backgroundSizeMode": "100%", "autoFillHeight": true, "backgroundImageUrl": null, "mobileAutoFillHeight": false, "mobileRowHeight": 70, - "outerMargin": true + "outerMargin": true, + "layoutType": "default", + "minColumns": 24, + "viewFormat": "grid", + "rowHeight": 70 } } } }, - "notifications": { - "name": "{i18n:api-usage.notifications-email-sms}", + "transport_messages": { + "name": "{i18n:api-usage.transport-messages}", "root": false, "layouts": { "main": { "widgets": { - "36fdf999-ca22-9a4c-269d-3f004d792792": { - "sizeX": 12, - "sizeY": 6, + "07e3a570-c961-b72d-3371-5b29f3617b73": { + "sizeX": 24, + "sizeY": 39, "row": 0, "col": 0 - }, - "9a191755-499d-535e-86c5-061102729c02": { - "sizeX": 12, - "sizeY": 6, - "row": 0, - "col": 12 - }, - "4b266318-8357-33ef-ca5a-74cbf90e014f": { - "sizeX": 12, - "sizeY": 6, - "row": 6, - "col": 0 - }, - "5aa33b0b-3bd5-7fe7-ee72-f564c2ca79d8": { - "sizeX": 12, - "sizeY": 6, - "row": 6, - "col": 12 } }, "gridSettings": { + "layoutType": "divider", "backgroundColor": "#eeeeee", - "color": "rgba(0,0,0,0.870588)", - "columns": 24, - "margin": 5, + "columns": 12, + "margin": 8, + "outerMargin": true, "backgroundSizeMode": "100%", + "minColumns": 12, + "viewFormat": "grid", "autoFillHeight": true, + "rowHeight": 70, + "backgroundImageUrl": null, + "mobileAutoFillHeight": true, + "mobileRowHeight": 70, + "layoutDimension": { + "type": "percentage", + "leftWidthPercentage": 30 + } + } + }, + "right": { + "widgets": { + "51608a74-f213-d8c9-8df8-b42238ef93a6": { + "sizeX": 12, + "sizeY": 4, + "row": 0, + "col": 0 + }, + "fb155957-1af4-233e-e2fb-09e648e75d6e": { + "sizeX": 6, + "sizeY": 4, + "row": 4, + "col": 0 + }, + "4817e33b-87be-5be3-eaca-ca68a2eb4e0c": { + "sizeX": 6, + "sizeY": 4, + "row": 4, + "col": 6 + } + }, + "gridSettings": { + "layoutType": "divider", + "backgroundColor": "#eeeeee", + "columns": 12, + "margin": 8, + "outerMargin": true, + "backgroundSizeMode": "100%", + "minColumns": 12, + "viewFormat": "grid", + "autoFillHeight": true, + "rowHeight": 70, "backgroundImageUrl": null, "mobileAutoFillHeight": false, "mobileRowHeight": 70, - "outerMargin": true + "mobileDisplayLayoutFirst": false + } + } + } + }, + "transport_data_points": { + "name": "{i18n:api-usage.transport-data-points}", + "root": false, + "layouts": { + "main": { + "widgets": { + "07e3a570-c961-b72d-3371-5b29f3617b73": { + "sizeX": 24, + "sizeY": 39, + "row": 0, + "col": 0 + } + }, + "gridSettings": { + "layoutType": "divider", + "backgroundColor": "#eeeeee", + "columns": 12, + "margin": 8, + "outerMargin": true, + "backgroundSizeMode": "100%", + "minColumns": 12, + "viewFormat": "grid", + "autoFillHeight": true, + "rowHeight": 70, + "backgroundImageUrl": null, + "mobileAutoFillHeight": true, + "mobileRowHeight": 70, + "layoutDimension": { + "type": "percentage", + "leftWidthPercentage": 30 + } + } + }, + "right": { + "widgets": { + "9e00cc90-520d-2108-1d2f-bba68ed5cbf1": { + "sizeX": 12, + "sizeY": 4, + "row": 0, + "col": 0 + }, + "79056202-c92b-1dae-ce49-318ec52e2d3b": { + "sizeX": 6, + "sizeY": 4, + "row": 4, + "col": 0 + }, + "966ffee7-ba0d-8e54-f903-e8d015ca8cd2": { + "sizeX": 6, + "sizeY": 4, + "row": 4, + "col": 6 + } + }, + "gridSettings": { + "layoutType": "divider", + "backgroundColor": "#eeeeee", + "columns": 12, + "margin": 8, + "outerMargin": true, + "backgroundSizeMode": "100%", + "minColumns": 12, + "viewFormat": "grid", + "autoFillHeight": true, + "rowHeight": 70, + "backgroundImageUrl": null, + "mobileAutoFillHeight": false, + "mobileRowHeight": 70, + "mobileDisplayLayoutFirst": false + } + } + } + }, + "rule_engine_executions": { + "name": "{i18n:api-usage.rule-engine-executions}", + "root": false, + "layouts": { + "main": { + "widgets": { + "07e3a570-c961-b72d-3371-5b29f3617b73": { + "sizeX": 24, + "sizeY": 39, + "row": 0, + "col": 0 + } + }, + "gridSettings": { + "layoutType": "divider", + "backgroundColor": "#eeeeee", + "columns": 12, + "margin": 8, + "outerMargin": true, + "backgroundSizeMode": "100%", + "minColumns": 12, + "viewFormat": "grid", + "autoFillHeight": true, + "rowHeight": 70, + "backgroundImageUrl": null, + "mobileAutoFillHeight": true, + "mobileRowHeight": 70, + "layoutDimension": { + "type": "percentage", + "leftWidthPercentage": 30 + } + } + }, + "right": { + "widgets": { + "b1a9a51f-e5a6-9d5f-ef5c-25c2a68af1b0": { + "sizeX": 12, + "sizeY": 4, + "row": 0, + "col": 0 + }, + "84fbe63a-bcb6-7bc1-8af0-46b3b1ee5adc": { + "sizeX": 6, + "sizeY": 4, + "row": 4, + "col": 0 + }, + "43a2b982-6c02-d9bd-71ee-34e8e6cf8893": { + "sizeX": 6, + "sizeY": 4, + "row": 4, + "col": 6 + } + }, + "gridSettings": { + "layoutType": "divider", + "backgroundColor": "#eeeeee", + "columns": 12, + "margin": 8, + "outerMargin": true, + "backgroundSizeMode": "100%", + "minColumns": 12, + "viewFormat": "grid", + "autoFillHeight": true, + "rowHeight": 70, + "backgroundImageUrl": null, + "mobileAutoFillHeight": false, + "mobileRowHeight": 70, + "mobileDisplayLayoutFirst": false + } + } + } + }, + "javascript_function_executions": { + "name": "{i18n:api-usage.javascript-function-executions}", + "root": false, + "layouts": { + "main": { + "widgets": { + "07e3a570-c961-b72d-3371-5b29f3617b73": { + "sizeX": 24, + "sizeY": 39, + "row": 0, + "col": 0 + } + }, + "gridSettings": { + "layoutType": "divider", + "backgroundColor": "#eeeeee", + "columns": 12, + "margin": 8, + "outerMargin": true, + "backgroundSizeMode": "100%", + "minColumns": 12, + "viewFormat": "grid", + "autoFillHeight": true, + "rowHeight": 70, + "backgroundImageUrl": null, + "mobileAutoFillHeight": true, + "mobileRowHeight": 70, + "layoutDimension": { + "type": "percentage", + "leftWidthPercentage": 30 + } + } + }, + "right": { + "widgets": { + "76fe83c9-c30f-00a5-6299-40c759ca6705": { + "sizeX": 12, + "sizeY": 4, + "row": 0, + "col": 0 + }, + "a43598d1-7bfd-f329-ee61-c343f34f069f": { + "sizeX": 6, + "sizeY": 4, + "row": 4, + "col": 0 + }, + "3ebd62a8-dcb7-c96b-8571-e61084248f5b": { + "sizeX": 6, + "sizeY": 4, + "row": 4, + "col": 6 + } + }, + "gridSettings": { + "layoutType": "divider", + "backgroundColor": "#eeeeee", + "columns": 12, + "margin": 8, + "outerMargin": true, + "backgroundSizeMode": "100%", + "minColumns": 12, + "viewFormat": "grid", + "autoFillHeight": true, + "rowHeight": 70, + "backgroundImageUrl": null, + "mobileAutoFillHeight": false, + "mobileRowHeight": 70, + "mobileDisplayLayoutFirst": false + } + } + } + }, + "tbel_function_executions": { + "name": "{i18n:api-usage.tbel-function-executions}", + "root": false, + "layouts": { + "main": { + "widgets": { + "07e3a570-c961-b72d-3371-5b29f3617b73": { + "sizeX": 24, + "sizeY": 39, + "row": 0, + "col": 0 + } + }, + "gridSettings": { + "layoutType": "divider", + "backgroundColor": "#eeeeee", + "columns": 12, + "margin": 8, + "outerMargin": true, + "backgroundSizeMode": "100%", + "minColumns": 12, + "viewFormat": "grid", + "autoFillHeight": true, + "rowHeight": 70, + "backgroundImageUrl": null, + "mobileAutoFillHeight": true, + "mobileRowHeight": 70, + "layoutDimension": { + "type": "percentage", + "leftWidthPercentage": 30 + } + } + }, + "right": { + "widgets": { + "88e25971-e5cb-eebb-3c7c-1ce33a8a38f4": { + "sizeX": 12, + "sizeY": 4, + "row": 0, + "col": 0 + }, + "a1b5731c-e3b3-8cfb-7c50-3abcdce891d2": { + "sizeX": 6, + "sizeY": 4, + "row": 4, + "col": 0 + }, + "efc8d4e9-dee2-b677-c378-c1a666543bf4": { + "sizeX": 6, + "sizeY": 4, + "row": 4, + "col": 6 + } + }, + "gridSettings": { + "layoutType": "divider", + "backgroundColor": "#eeeeee", + "columns": 12, + "margin": 8, + "outerMargin": true, + "backgroundSizeMode": "100%", + "minColumns": 12, + "viewFormat": "grid", + "autoFillHeight": true, + "rowHeight": 70, + "backgroundImageUrl": null, + "mobileAutoFillHeight": false, + "mobileRowHeight": 70, + "mobileDisplayLayoutFirst": false + } + } + } + }, + "data_points_storage_days": { + "name": "{i18n:api-usage.data-points-storage-days}", + "root": false, + "layouts": { + "main": { + "widgets": { + "07e3a570-c961-b72d-3371-5b29f3617b73": { + "sizeX": 24, + "sizeY": 39, + "row": 0, + "col": 0 + } + }, + "gridSettings": { + "layoutType": "divider", + "backgroundColor": "#eeeeee", + "columns": 12, + "margin": 8, + "outerMargin": true, + "backgroundSizeMode": "100%", + "minColumns": 12, + "viewFormat": "grid", + "autoFillHeight": true, + "rowHeight": 70, + "backgroundImageUrl": null, + "mobileAutoFillHeight": true, + "mobileRowHeight": 70, + "layoutDimension": { + "type": "percentage", + "leftWidthPercentage": 30 + } + } + }, + "right": { + "widgets": { + "61a23bd5-329f-aae7-3168-8a14a51dc10b": { + "sizeX": 12, + "sizeY": 4, + "row": 0, + "col": 0 + }, + "1249d3e2-6b3a-4e4a-65e9-6ed22959871e": { + "sizeX": 6, + "sizeY": 4, + "row": 4, + "col": 0 + }, + "c2f2da29-741d-54f6-5f1d-6f6ae616ea02": { + "sizeX": 6, + "sizeY": 4, + "row": 4, + "col": 6 + } + }, + "gridSettings": { + "layoutType": "divider", + "backgroundColor": "#eeeeee", + "columns": 12, + "margin": 8, + "outerMargin": true, + "backgroundSizeMode": "100%", + "minColumns": 12, + "viewFormat": "grid", + "autoFillHeight": true, + "rowHeight": 70, + "backgroundImageUrl": null, + "mobileAutoFillHeight": false, + "mobileRowHeight": 70, + "mobileDisplayLayoutFirst": false + } + } + } + }, + "emails": { + "name": "{i18n:api-usage.emails}", + "root": false, + "layouts": { + "main": { + "widgets": { + "07e3a570-c961-b72d-3371-5b29f3617b73": { + "sizeX": 24, + "sizeY": 39, + "row": 0, + "col": 0 + } + }, + "gridSettings": { + "layoutType": "divider", + "backgroundColor": "#eeeeee", + "columns": 12, + "margin": 8, + "outerMargin": true, + "backgroundSizeMode": "100%", + "minColumns": 12, + "viewFormat": "grid", + "autoFillHeight": true, + "rowHeight": 70, + "backgroundImageUrl": null, + "mobileAutoFillHeight": true, + "mobileRowHeight": 70, + "layoutDimension": { + "type": "percentage", + "leftWidthPercentage": 30 + } + } + }, + "right": { + "widgets": { + "407f7630-406e-9c24-cb3d-b1cbdd190f15": { + "sizeX": 12, + "sizeY": 4, + "row": 0, + "col": 0 + }, + "b12fb875-89fe-af4c-b344-bf4178de419f": { + "sizeX": 6, + "sizeY": 4, + "row": 4, + "col": 0 + }, + "0b00099d-d131-3e8b-97ce-c4b8d7bcab1f": { + "sizeX": 6, + "sizeY": 4, + "row": 4, + "col": 6 + } + }, + "gridSettings": { + "layoutType": "divider", + "backgroundColor": "#eeeeee", + "columns": 12, + "margin": 8, + "outerMargin": true, + "backgroundSizeMode": "100%", + "minColumns": 12, + "viewFormat": "grid", + "autoFillHeight": true, + "rowHeight": 70, + "backgroundImageUrl": null, + "mobileAutoFillHeight": false, + "mobileRowHeight": 70, + "mobileDisplayLayoutFirst": false + } + } + } + }, + "sms": { + "name": "{i18n:api-usage.sms}", + "root": false, + "layouts": { + "main": { + "widgets": { + "07e3a570-c961-b72d-3371-5b29f3617b73": { + "sizeX": 24, + "sizeY": 39, + "row": 0, + "col": 0 + } + }, + "gridSettings": { + "layoutType": "divider", + "backgroundColor": "#eeeeee", + "columns": 12, + "margin": 8, + "outerMargin": true, + "backgroundSizeMode": "100%", + "minColumns": 12, + "viewFormat": "grid", + "autoFillHeight": true, + "rowHeight": 70, + "backgroundImageUrl": null, + "mobileAutoFillHeight": true, + "mobileRowHeight": 70, + "layoutDimension": { + "type": "percentage", + "leftWidthPercentage": 30 + } + } + }, + "right": { + "widgets": { + "5648a56e-5a33-3018-92bd-d8e3dbe8aeee": { + "sizeX": 12, + "sizeY": 4, + "row": 0, + "col": 0 + }, + "ab5518c1-34d6-7e17-04b4-6520496d5fe1": { + "sizeX": 6, + "sizeY": 4, + "row": 4, + "col": 0 + }, + "2e7326ac-98d3-e68c-b7cf-948118a3f140": { + "sizeX": 6, + "sizeY": 4, + "row": 4, + "col": 6 + } + }, + "gridSettings": { + "layoutType": "divider", + "backgroundColor": "#eeeeee", + "columns": 12, + "margin": 8, + "outerMargin": true, + "backgroundSizeMode": "100%", + "minColumns": 12, + "viewFormat": "grid", + "autoFillHeight": true, + "rowHeight": 70, + "backgroundImageUrl": null, + "mobileAutoFillHeight": false, + "mobileRowHeight": 70, + "mobileDisplayLayoutFirst": false } } } @@ -8659,64 +14014,69 @@ "layouts": { "main": { "widgets": { - "bef6c27b-9fe7-ee92-40d9-9696c501a1f9": { + "07e3a570-c961-b72d-3371-5b29f3617b73": { "sizeX": 24, - "sizeY": 6, + "sizeY": 39, "row": 0, "col": 0 - }, - "52305cf8-2258-5745-a0e7-41a171594bb3": { - "sizeX": 24, - "sizeY": 6, - "row": 6, - "col": 0 } }, "gridSettings": { + "layoutType": "divider", "backgroundColor": "#eeeeee", - "color": "rgba(0,0,0,0.870588)", - "columns": 24, - "margin": 5, + "columns": 12, + "margin": 8, + "outerMargin": true, "backgroundSizeMode": "100%", + "minColumns": 12, + "viewFormat": "grid", "autoFillHeight": true, + "rowHeight": 70, "backgroundImageUrl": null, - "mobileAutoFillHeight": false, + "mobileAutoFillHeight": true, "mobileRowHeight": 70, - "outerMargin": true + "layoutDimension": { + "type": "percentage", + "leftWidthPercentage": 30 + } } - } - } - }, - "script_functions": { - "name": "{i18n:api-usage.scripts}", - "root": false, - "layouts": { - "main": { + }, + "right": { "widgets": { - "c66e5060-57fd-11e7-6616-65b82c294ac2": { - "sizeX": 24, - "sizeY": 6, + "8e07dbe5-aa7a-19c1-c470-5f055df948a7": { + "sizeX": 12, + "sizeY": 4, "row": 0, "col": 0 }, - "d0e8603e-5d2e-9287-e2c6-8ccbe9c66806": { - "sizeX": 24, - "sizeY": 6, - "row": 6, + "e0fe9887-d61c-7813-05a7-f60811e5c5bf": { + "sizeX": 6, + "sizeY": 4, + "row": 4, "col": 0 + }, + "99a40c35-c232-16c5-c42f-3cc80ddb9243": { + "sizeX": 6, + "sizeY": 4, + "row": 4, + "col": 6 } }, "gridSettings": { + "layoutType": "divider", "backgroundColor": "#eeeeee", - "color": "rgba(0,0,0,0.870588)", - "columns": 24, - "margin": 5, + "columns": 12, + "margin": 8, + "outerMargin": true, "backgroundSizeMode": "100%", + "minColumns": 12, + "viewFormat": "grid", "autoFillHeight": true, + "rowHeight": 70, "backgroundImageUrl": null, "mobileAutoFillHeight": false, "mobileRowHeight": 70, - "outerMargin": true + "mobileDisplayLayoutFirst": false } } } @@ -8743,9 +14103,6 @@ }, "filters": {}, "timewindow": { - "hideInterval": false, - "hideLastInterval": false, - "hideQuickInterval": false, "hideAggregation": false, "hideAggInterval": false, "hideTimezone": false, @@ -8776,7 +14133,7 @@ "dashboardLogoUrl": null, "hideToolbar": false, "showUpdateDashboardImage": false, - "dashboardCss": ".card .bars-row {\n flex: 1;\n display: flex;\n flex-direction: row;\n}\n\n.card .bar-column {\n flex: 1;\n display: flex;\n flex-direction: column;\n}\n\n\n.card {\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n}\n\n.card > img {\n height: 0;\n}\n\n.card .content {\n flex: 1; \n padding: 12px 12px 0;\n display: flex;\n box-sizing: border-box;\n}\n\n.card .content .column {\n display: flex;\n flex-direction: column; \n justify-content: space-around;\n flex: 1;\n}\n\n.card .content .title-row {\n display: flex;\n flex-direction: row;\n padding-bottom: 10px;\n}\n\n.card .title {\n flex: 1;\n font-size: 20px;\n font-weight: 400;\n color: #666666;\n}\n\n.card .state {\n text-transform: uppercase;\n font-size: 20px;\n font-weight: bold;\n}\n\n.card.enabled .state {\n color: #00B260;\n}\n\n.card.warning .state {\n color: #FFAD6F;\n}\n\n.card.disabled .state {\n color: #F73243;\n}\n\n.card .bar-container {\n flex: 1;\n display: flex;\n flex-direction: column;\n justify-content: center;\n}\n\n.card .bar {\n flex: 1;\n max-height: 30px;\n margin-top: 3.5px;\n margin-bottom: 4px;\n background-color: #F0F0F0;\n border: 1px solid #DADCDB;\n border-radius: 2px;\n box-shadow: inset 0 1px 3px rgba(0, 0, 0, .2);\n}\n\n.card.enabled .bar {\n border-color: #00B260;\n background-color: #F0FBF7;\n}\n\n.card.warning .bar {\n border-color: #FFAD6F;\n background-color: #FFFAF6;\n}\n\n.card.disabled .bar {\n border-color: #F73243;\n background-color: #FFF0F0;\n}\n\n.card .bar .bar-fill {\n background-color: #F0F0F0;\n border-radius: 2px;\n height: 100%;\n width: 0%;\n}\n\n.card.enabled .bar-fill {\n background-color: #00C46C;\n}\n\n.card.warning .bar-fill {\n background-color: #FFD099;\n}\n\n.card.disabled .bar-fill {\n background-color: #FF9494;\n}\n\n.card .bar-labels {\n height: 20px;\n font-size: 16px;\n color: #666;\n display: flex;\n flex-direction: row;\n}\n\n\n.card .mat-mdc-button-base {\n text-transform: uppercase;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.card .mdc-button__label {\n pointer-events: none;\n}\n\n.action-row {\n display: flex;\n flex-direction: row;\n justify-content: flex-end;\n padding: 8px 0;\n}\n\n.card .unit {\n color: #666666;\n}\n\n@media screen and (min-width: 960px) and (max-width: 1279px) {\n .card .title {\n font-size: 12px;\n }\n .card .state {\n font-size: 12px;\n }\n .card .unit {\n font-size: 8px;\n }\n .card .bar-labels {\n font-size: 8px;\n }\n .card .mat-mdc-button-base {\n font-size: 8px;\n }\n .card .action-row {\n padding: 0;\n }\n}\n\n@media screen and (min-width: 1280px) and (max-width: 1599px) {\n .card .title {\n font-size: 14px;\n }\n .card .state {\n font-size: 14px;\n }\n .card .unit {\n font-size: 10px;\n }\n .card .bar-labels {\n font-size: 10px;\n }\n .card .mat-mdc-button-base {\n font-size: 10px;\n }\n .card .action-row {\n padding: 0;\n }\n}\n\n@media screen and (min-width: 1600px) and (max-width: 1919px) {\n .card .title {\n font-size: 16px;\n }\n .card .state {\n font-size: 16px;\n }\n .card .unit {\n font-size: 12px;\n }\n .card .bar-labels {\n font-size: 12px;\n }\n .card .mat-mdc-button-base {\n font-size: 12px;\n }\n .card .action-row {\n padding: 0;\n }\n} " + "dashboardCss": "" } }, "name": "Api Usage" diff --git a/ui-ngx/src/assets/locale/locale.constant-en_US.json b/ui-ngx/src/assets/locale/locale.constant-en_US.json index 80328181f6..f1fc7835f5 100644 --- a/ui-ngx/src/assets/locale/locale.constant-en_US.json +++ b/ui-ngx/src/assets/locale/locale.constant-en_US.json @@ -865,15 +865,18 @@ "api-features": "API features", "api-usage": "API usage", "alarm": "Alarm", - "alarms-created": "Alarms created", + "alarms-created": "Created alarms", "queue-stats": "Queue Stats", "processing-failures-and-timeouts": "Processing Failures and Timeouts", "exceptions": "Exceptions", - "alarms-created-daily-activity": "Alarms created daily activity", - "alarms-created-hourly-activity": "Alarms created hourly activity", - "alarms-created-monthly-activity": "Alarms created monthly activity", + "alarms-created-daily-activity": "Created alarms daily activity", + "alarms-created-hourly-activity": "Created alarms hourly activity", + "alarms-created-monthly-activity": "Created alarms monthly activity", "data-points": "Data points", "data-points-storage-days": "Data points storage days", + "data-points-storage-days-hourly-activity": "Data points storage days hourly activity", + "data-points-storage-days-daily-activity": "Data points storage days daily activity", + "data-points-storage-days-monthly-activity": "Data points storage days monthly activity", "device-api": "Device API", "email": "Email", "email-messages": "Email messages", @@ -899,14 +902,15 @@ "processing-timeouts": "${entityName} Processing Timeouts", "rule-chain": "Rule Chain", "rule-engine": "Rule Engine", - "rule-engine-daily-activity": "Rule Engine daily activity", "rule-engine-executions": "Rule Engine executions", "rule-engine-hourly-activity": "Rule Engine hourly activity", + "rule-engine-daily-activity": "Rule Engine daily activity", "rule-engine-monthly-activity": "Rule Engine monthly activity", "rule-engine-statistics": "Rule Engine Statistics", "rule-node": "Rule Node", "sms": "SMS", "sms-messages": "SMS messages", + "sms-messages-hourly-activity": "SMS messages hourly activity", "sms-messages-daily-activity": "SMS messages daily activity", "sms-messages-monthly-activity": "SMS messages monthly activity", "successful": "${entityName} Successful", @@ -916,13 +920,40 @@ "telemetry-persistence-hourly-activity": "Telemetry persistence hourly activity", "telemetry-persistence-monthly-activity": "Telemetry persistence monthly activity", "transport": "Transport", + "transport-msg-hourly-activity": "Transport messages hourly activity", + "transport-msg-daily-activity": "Transport messages daily activity", + "transport-msg-monthly-activity": "Transport messages monthly activity", "transport-daily-activity": "Transport daily activity", "transport-data-points": "Transport data points", - "transport-hourly-activity": "Transport hourly activity", - "transport-messages": "Transport messages", - "transport-monthly-activity": "Transport monthly activity", + "transport-data-points-hourly-activity": "Transport data points hourly activity", + "transport-data-points-daily-activity": "Transport data points daily activity", + "transport-data-points-monthly-activity": "Transport data points monthly activity", "view-details": "View details", - "view-statistics": "View statistics" + "view-statistics": "View statistics", + "transport-messages": "Transport messages", + "transport-messages-hourly-activity": "Transport messages hourly activity", + "transport-data-point-hourly-activity": "Transport data point hourly activity", + "javascript-function-executions": "JavaScript function executions", + "javascript-function-executions-hourly-activity": "JavaScript function executions hourly activity", + "javascript-function-executions-daily-activity": "JavaScript function executions daily activity", + "javascript-function-executions-monthly-activity": "JavaScript function executions monthly activity", + "tbel-function-executions": "TBEL function executions", + "tbel-function-executions-hourly-activity": "TBEL function executions hourly activity", + "tbel-function-executions-daily-activity": "TBEL function executions daily activity", + "tbel-function-executions-monthly-activity": "TBEL function executions monthly activity", + "created-reports": "Created reports", + "created-reports-hourly-activity": "Created reports hourly activity", + "created-reports-daily-activity": "Created reports daily activity", + "created-reports-monthly-activity": "Created reports monthly activity", + "emails": "Emails", + "emails-hourly-activity": "Emails hourly activity", + "emails-daily-activity": "Emails daily activity", + "emails-monthly-activity": "Emails monthly activity", + "status": { + "enabled": "Enabled", + "disabled": "Disabled", + "warning": "Warning" + } }, "api-limit": { "cassandra-write-queries-core": "Rest API Cassandra write queries", @@ -9483,6 +9514,18 @@ "how-to-create-customer-and-assign-dashboard": "How to create Customer and assign Dashboard" } } + }, + "api-usage": { + "api-usage": "API usage", + "label": "Label", + "state-name": "State name", + "status": "Status", + "limit": "Max limit", + "current-number": "Current number", + "add-key": "Add key", + "no-key": "No key", + "delete-key": "Delete key", + "target-dashboard-state": "Target dashboard state" } }, "color": {