diff --git a/404.html b/404.html index c799acd8..92a602a5 100644 --- a/404.html +++ b/404.html @@ -4,8 +4,8 @@ Lobaro Documentation - - + +
Skip to main content

Page Not Found

We could not find what you were looking for.

Please contact the owner of the site that linked you to the original URL and let them know their link is broken.

diff --git a/assets/js/0b02251e.235cd339.js b/assets/js/0b02251e.235cd339.js deleted file mode 100644 index 4b11472d..00000000 --- a/assets/js/0b02251e.235cd339.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunklobaro_docs=self.webpackChunklobaro_docs||[]).push([[3830],{5570:e=>{e.exports=JSON.parse('{"version":{"pluginId":"default","version":"current","label":"Next","banner":null,"badge":false,"noIndex":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"htmlSidebar":[{"type":"html","value":"TEST|TEST","defaultStyle":true}],"allDocSidebar":[{"type":"category","label":"Lobaro Docs","items":[{"type":"link","label":"Home","href":"/iot/","docId":"index","unlisted":false},{"type":"category","label":"Products","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Metering Gateways","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"wM-Bus GW V3 (Battery)","href":"/iot/products/metering-gateways/wireless-mbus-gateway-v3","docId":"products/metering-gateways/wireless-mbus-gateway-v3","unlisted":false},{"type":"link","label":"wM-Bus GW (12V - 24V)","href":"/iot/products/metering-gateways/wireless-mbus-gateway-dinrail","docId":"products/metering-gateways/wireless-mbus-gateway-dinrail","unlisted":false},{"type":"link","label":"wM-Bus GW (230V)","href":"/iot/products/metering-gateways/wireless-mbus-gateway-dinrail-230V","docId":"products/metering-gateways/wireless-mbus-gateway-dinrail-230V","unlisted":false},{"type":"link","label":"wM-Bus GW (Concentrator)","href":"/iot/products/metering-gateways/wireless-mbus-gateway-dinrail-concentrator","docId":"products/metering-gateways/wireless-mbus-gateway-dinrail-concentrator","unlisted":false},{"type":"link","label":"wM-Bus GW (Solar)","href":"/iot/products/metering-gateways/wireless-mbus-gateway-sun-v1","docId":"products/metering-gateways/wireless-mbus-gateway-sun-v1","unlisted":false}]},{"type":"category","label":"Sensor Gateways","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Current Loop","href":"/iot/products/sensor-gateways/current-loop/","docId":"products/sensor-gateways/current-loop/index","unlisted":false},{"type":"link","label":"Liquid Level","href":"/iot/products/sensor-gateways/level/","docId":"products/sensor-gateways/level/index","unlisted":false},{"type":"link","label":"Modbus","href":"/iot/products/sensor-gateways/modbus/","docId":"products/sensor-gateways/modbus/index","unlisted":false},{"type":"link","label":"Temperature","href":"/iot/products/sensor-gateways/temperature/","docId":"products/sensor-gateways/temperature/index","unlisted":false},{"type":"category","label":"Wireless M-BUS (Gen. 3)","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Operation Manual","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Configuration","href":"/iot/products/sensor-gateways/wireless-mbus-g3/manual/cfg","docId":"products/sensor-gateways/wireless-mbus-g3/manual/cfg","unlisted":false},{"type":"link","label":"Workflow","href":"/iot/products/sensor-gateways/wireless-mbus-g3/manual/workflow","docId":"products/sensor-gateways/wireless-mbus-g3/manual/workflow","unlisted":false}],"href":"/iot/products/sensor-gateways/wireless-mbus-g3/manual/"},{"type":"category","label":"Hardware Variants","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Gateway V4","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Description","href":"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/gw-v4/desc","docId":"products/sensor-gateways/wireless-mbus-g3/hardware-variants/gw-v4/desc","unlisted":false}],"href":"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/gw-v4/"},{"type":"link","label":"Gateway V3","href":"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/gw-v3/","docId":"products/sensor-gateways/wireless-mbus-g3/hardware-variants/gw-v3/index","unlisted":false},{"type":"link","label":"Gateway DinRail","href":"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/dinrail-v1/","docId":"products/sensor-gateways/wireless-mbus-g3/hardware-variants/dinrail-v1/index","unlisted":false},{"type":"link","label":"Gateway Solar","href":"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/sun-v1/","docId":"products/sensor-gateways/wireless-mbus-g3/hardware-variants/sun-v1/index","unlisted":false},{"type":"link","label":"Gateway Concentrator","href":"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/concentrator-v1/","docId":"products/sensor-gateways/wireless-mbus-g3/hardware-variants/concentrator-v1/index","unlisted":false},{"type":"category","label":"Discontinued","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"LoRaWAN Bridge V2","href":"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/discontinued/bridge-v2/","docId":"products/sensor-gateways/wireless-mbus-g3/hardware-variants/discontinued/bridge-v2/index","unlisted":false},{"type":"link","label":"Gateway V2","href":"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/discontinued/gw-v2/","docId":"products/sensor-gateways/wireless-mbus-g3/hardware-variants/discontinued/gw-v2/index","unlisted":false}],"href":"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/discontinued/"}]}],"href":"/iot/products/sensor-gateways/wireless-mbus-g3/"},{"type":"category","label":"Wireless M-BUS (Gen. 2)","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Operation Manual","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Configuration","href":"/iot/products/sensor-gateways/wireless-mbus-g2/manual/cfg","docId":"products/sensor-gateways/wireless-mbus-g2/manual/cfg","unlisted":false},{"type":"link","label":"Workflow","href":"/iot/products/sensor-gateways/wireless-mbus-g2/manual/workflow","docId":"products/sensor-gateways/wireless-mbus-g2/manual/workflow","unlisted":false}],"href":"/iot/products/sensor-gateways/wireless-mbus-g2/manual/"},{"type":"category","label":"Hardware Variants","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"LoRaWAN Bridge V2","href":"/iot/products/sensor-gateways/wireless-mbus-g2/hardware-variants/bridge-v2/","docId":"products/sensor-gateways/wireless-mbus-g2/hardware-variants/bridge-v2/index","unlisted":false}]}],"href":"/iot/products/sensor-gateways/wireless-mbus-g2/"},{"type":"category","label":"Wired M-BUS (Gen. 1)","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Operation Manual","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Configuration","href":"/iot/products/sensor-gateways/wired-mbus-g1/manual/cfg","docId":"products/sensor-gateways/wired-mbus-g1/manual/cfg","unlisted":false},{"type":"link","label":"Workflow","href":"/iot/products/sensor-gateways/wired-mbus-g1/manual/workflow","docId":"products/sensor-gateways/wired-mbus-g1/manual/workflow","unlisted":false}],"href":"/iot/products/sensor-gateways/wired-mbus-g1/manual/"},{"type":"category","label":"Hardware Variants","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Hybrid Gateway","href":"/iot/products/sensor-gateways/wired-mbus-g1/hardware-variants/dinrail-v1/","docId":"products/sensor-gateways/wired-mbus-g1/hardware-variants/dinrail-v1/index","unlisted":false}]}],"href":"/iot/products/sensor-gateways/wired-mbus-g1/"}]}],"href":"/iot/products/"},{"type":"category","label":"Components","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Firmware","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"app-nrf9160-wmbus","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Introduction","href":"/iot/components/firmware/app-nrf9160-wmbus/introduction","docId":"components/firmware/app-nrf9160-wmbus/introduction","unlisted":false},{"type":"link","label":"Configuration Parameter","href":"/iot/components/firmware/app-nrf9160-wmbus/configuration-parameter","docId":"components/firmware/app-nrf9160-wmbus/configuration-parameter","unlisted":false},{"type":"link","label":"LoRaWAN Communication","href":"/iot/components/firmware/app-nrf9160-wmbus/lorawan-communication-protocol","docId":"components/firmware/app-nrf9160-wmbus/lorawan-communication-protocol","unlisted":false},{"type":"link","label":"Cellular IoT Communication","href":"/iot/components/firmware/app-nrf9160-wmbus/cellular-iot-communication-protocol","docId":"components/firmware/app-nrf9160-wmbus/cellular-iot-communication-protocol","unlisted":false},{"type":"link","label":"Changelog","href":"/iot/components/firmware/app-nrf9160-wmbus/changelog","docId":"components/firmware/app-nrf9160-wmbus/changelog","unlisted":false}]},{"type":"link","label":"app-hybrid-modbus","href":"/iot/components/firmware/app-hybrid-modbus/","docId":"components/firmware/app-hybrid-modbus/index","unlisted":false}],"href":"/iot/components/firmware/"},{"type":"category","label":"Device Enclosures","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Spelsberg TG PC 1208-6-o","href":"/iot/components/enclosures/spelsberg_TG_PC_1208-6-o","docId":"components/enclosures/spelsberg_TG_PC_1208-6-o","unlisted":false}],"href":"/iot/components/enclosures/"},{"type":"category","label":"Batteries","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"13Ah LSH20 Cell","href":"/iot/components/batteries/single-saft-lsh20","docId":"components/batteries/single-saft-lsh20","unlisted":false},{"type":"link","label":"19Ah Battery Pack","href":"/iot/components/batteries/19ah-battery-pack","docId":"components/batteries/19ah-battery-pack","unlisted":false},{"type":"link","label":"38Ah Battery Pack","href":"/iot/components/batteries/38ah-battery-pack","docId":"components/batteries/38ah-battery-pack","unlisted":false}]},{"type":"link","label":"Hardware Addon Modules","href":"/iot/components/addon-modules/","docId":"components/addon-modules/index","unlisted":false},{"type":"link","label":"Postprocesses","href":"/iot/components/modifications/","docId":"components/modifications/index","unlisted":false}],"href":"/iot/components/"},{"type":"category","label":"Configuration","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Lobaro USB Config Adapter","href":"/iot/configuration/usb-config-adapter","docId":"configuration/usb-config-adapter","unlisted":false},{"type":"link","label":"Lobaro Config Tool","href":"/iot/configuration/lobaro-config-tool","docId":"configuration/lobaro-config-tool","unlisted":false},{"type":"link","label":"MBUS Reception Filtering","href":"/iot/configuration/meter-reception-filter-config","docId":"configuration/meter-reception-filter-config","unlisted":false},{"type":"link","label":"LoRaWAN Downlink Config","href":"/iot/configuration/lorawan-downlink-config","docId":"configuration/lorawan-downlink-config","unlisted":false},{"type":"link","label":"CRON Configuration","href":"/iot/configuration/cron-configuration","docId":"configuration/cron-configuration","unlisted":false},{"type":"link","label":"LTE Network Configuration","href":"/iot/configuration/lte-network-configuration","docId":"configuration/lte-network-configuration","unlisted":false},{"type":"link","label":"OBIS-Code Configuration","href":"/iot/configuration/obis-code-configuration","docId":"configuration/obis-code-configuration","unlisted":false}],"href":"/iot/configuration/"},{"type":"category","label":"IoT Platform","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Integrations","href":"/iot/platform/integrations/","docId":"platform/integrations/index","unlisted":false},{"type":"category","label":"Administration","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Changelog","href":"/iot/platform/administration/changelog","docId":"platform/administration/changelog","unlisted":false},{"type":"link","label":"Datasources","href":"/iot/platform/administration/datasources","docId":"platform/administration/datasources","unlisted":false},{"type":"link","label":"Monitoring","href":"/iot/platform/administration/monitoring","docId":"platform/administration/monitoring","unlisted":false},{"type":"link","label":"Server Certificates","href":"/iot/platform/administration/server-certificates","docId":"platform/administration/server-certificates","unlisted":false},{"type":"link","label":"Server Configuration","href":"/iot/platform/administration/server-configuration","docId":"platform/administration/server-configuration","unlisted":false}],"href":"/iot/platform/administration/"},{"type":"category","label":"Devices","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Downlinks","href":"/iot/platform/devices/downlinks","docId":"platform/devices/downlinks","unlisted":false}],"href":"/iot/platform/devices/"},{"type":"category","label":"Hosting & Licensing","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Lobaro Direct+","href":"/iot/platform/license/direct+/","docId":"platform/license/direct+/index","unlisted":false}],"href":"/iot/platform/license/"},{"type":"category","label":"3rd Party Devices","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Dragino","href":"/iot/platform/3rd-party/dragino","docId":"platform/3rd-party/dragino","unlisted":false}]},{"type":"link","label":"FAQ","href":"/iot/platform/faq","docId":"platform/faq","unlisted":false}],"href":"/iot/platform/"},{"type":"category","label":"Knowledge Base","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Wireless M-BUS","href":"/iot/knowledge-base/wireless-mbus","docId":"knowledge-base/wireless-mbus","unlisted":false},{"type":"link","label":"Modbus","href":"/iot/knowledge-base/modbus","docId":"knowledge-base/modbus","unlisted":false}],"href":"/iot/knowledge-base/"}],"collapsed":true,"collapsible":true}]},"docs":{"components/addon-modules/index":{"id":"components/addon-modules/index","title":"Addon Modules Overview","description":"","sidebar":"allDocSidebar"},"components/batteries/19ah-battery-pack":{"id":"components/batteries/19ah-battery-pack","title":"19Ah Battery Pack","description":"* Voltage: 3.6V","sidebar":"allDocSidebar"},"components/batteries/38ah-battery-pack":{"id":"components/batteries/38ah-battery-pack","title":"38Ah Battery Pack","description":"* Voltage: 3.6V","sidebar":"allDocSidebar"},"components/batteries/single-saft-lsh20":{"id":"components/batteries/single-saft-lsh20","title":"13Ah LSH20 Cell","description":"* Voltage: 3.6V","sidebar":"allDocSidebar"},"components/enclosures/index":{"id":"components/enclosures/index","title":"Device Enclosures","description":"","sidebar":"allDocSidebar"},"components/enclosures/spelsberg_TG_PC_1208-6-o":{"id":"components/enclosures/spelsberg_TG_PC_1208-6-o","title":"Spelsberg TG PC 1208-6-o","description":"\'Spelsberg{e.exports=JSON.parse('{"version":{"pluginId":"default","version":"current","label":"Next","banner":null,"badge":false,"noIndex":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"htmlSidebar":[{"type":"html","value":"TEST|TEST","defaultStyle":true}],"allDocSidebar":[{"type":"category","label":"Lobaro Docs","items":[{"type":"link","label":"Home","href":"/iot/","docId":"index","unlisted":false},{"type":"category","label":"Products","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Metering Gateways","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"wM-Bus GW V3 (Battery)","href":"/iot/products/metering-gateways/wireless-mbus-gateway-v3","docId":"products/metering-gateways/wireless-mbus-gateway-v3","unlisted":false},{"type":"link","label":"wM-Bus GW (12V - 24V)","href":"/iot/products/metering-gateways/wireless-mbus-gateway-dinrail","docId":"products/metering-gateways/wireless-mbus-gateway-dinrail","unlisted":false},{"type":"link","label":"wM-Bus GW (230V)","href":"/iot/products/metering-gateways/wireless-mbus-gateway-dinrail-230V","docId":"products/metering-gateways/wireless-mbus-gateway-dinrail-230V","unlisted":false},{"type":"link","label":"wM-Bus GW (Concentrator)","href":"/iot/products/metering-gateways/wireless-mbus-gateway-dinrail-concentrator","docId":"products/metering-gateways/wireless-mbus-gateway-dinrail-concentrator","unlisted":false},{"type":"link","label":"wM-Bus GW (Solar)","href":"/iot/products/metering-gateways/wireless-mbus-gateway-sun-v1","docId":"products/metering-gateways/wireless-mbus-gateway-sun-v1","unlisted":false}]},{"type":"category","label":"Sensor Gateways","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Current Loop","href":"/iot/products/sensor-gateways/current-loop/","docId":"products/sensor-gateways/current-loop/index","unlisted":false},{"type":"link","label":"Liquid Level","href":"/iot/products/sensor-gateways/level/","docId":"products/sensor-gateways/level/index","unlisted":false},{"type":"link","label":"Modbus","href":"/iot/products/sensor-gateways/modbus/","docId":"products/sensor-gateways/modbus/index","unlisted":false},{"type":"link","label":"Temperature","href":"/iot/products/sensor-gateways/temperature/","docId":"products/sensor-gateways/temperature/index","unlisted":false},{"type":"category","label":"Wireless M-BUS (Gen. 3)","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Operation Manual","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Configuration","href":"/iot/products/sensor-gateways/wireless-mbus-g3/manual/cfg","docId":"products/sensor-gateways/wireless-mbus-g3/manual/cfg","unlisted":false},{"type":"link","label":"Workflow","href":"/iot/products/sensor-gateways/wireless-mbus-g3/manual/workflow","docId":"products/sensor-gateways/wireless-mbus-g3/manual/workflow","unlisted":false}],"href":"/iot/products/sensor-gateways/wireless-mbus-g3/manual/"},{"type":"category","label":"Hardware Variants","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Gateway V4","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Description","href":"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/gw-v4/desc","docId":"products/sensor-gateways/wireless-mbus-g3/hardware-variants/gw-v4/desc","unlisted":false}],"href":"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/gw-v4/"},{"type":"link","label":"Gateway V3","href":"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/gw-v3/","docId":"products/sensor-gateways/wireless-mbus-g3/hardware-variants/gw-v3/index","unlisted":false},{"type":"link","label":"Gateway DinRail","href":"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/dinrail-v1/","docId":"products/sensor-gateways/wireless-mbus-g3/hardware-variants/dinrail-v1/index","unlisted":false},{"type":"link","label":"Gateway Solar","href":"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/sun-v1/","docId":"products/sensor-gateways/wireless-mbus-g3/hardware-variants/sun-v1/index","unlisted":false},{"type":"link","label":"Gateway Concentrator","href":"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/concentrator-v1/","docId":"products/sensor-gateways/wireless-mbus-g3/hardware-variants/concentrator-v1/index","unlisted":false},{"type":"category","label":"Discontinued","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"LoRaWAN Bridge V2","href":"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/discontinued/bridge-v2/","docId":"products/sensor-gateways/wireless-mbus-g3/hardware-variants/discontinued/bridge-v2/index","unlisted":false},{"type":"link","label":"Gateway V2","href":"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/discontinued/gw-v2/","docId":"products/sensor-gateways/wireless-mbus-g3/hardware-variants/discontinued/gw-v2/index","unlisted":false}],"href":"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/discontinued/"}]}],"href":"/iot/products/sensor-gateways/wireless-mbus-g3/"},{"type":"category","label":"Wireless M-BUS (Gen. 2)","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Operation Manual","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Configuration","href":"/iot/products/sensor-gateways/wireless-mbus-g2/manual/cfg","docId":"products/sensor-gateways/wireless-mbus-g2/manual/cfg","unlisted":false},{"type":"link","label":"Workflow","href":"/iot/products/sensor-gateways/wireless-mbus-g2/manual/workflow","docId":"products/sensor-gateways/wireless-mbus-g2/manual/workflow","unlisted":false}],"href":"/iot/products/sensor-gateways/wireless-mbus-g2/manual/"},{"type":"category","label":"Hardware Variants","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"LoRaWAN Bridge V2","href":"/iot/products/sensor-gateways/wireless-mbus-g2/hardware-variants/bridge-v2/","docId":"products/sensor-gateways/wireless-mbus-g2/hardware-variants/bridge-v2/index","unlisted":false}]}],"href":"/iot/products/sensor-gateways/wireless-mbus-g2/"},{"type":"category","label":"Wired M-BUS (Gen. 1)","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Operation Manual","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Configuration","href":"/iot/products/sensor-gateways/wired-mbus-g1/manual/cfg","docId":"products/sensor-gateways/wired-mbus-g1/manual/cfg","unlisted":false},{"type":"link","label":"Workflow","href":"/iot/products/sensor-gateways/wired-mbus-g1/manual/workflow","docId":"products/sensor-gateways/wired-mbus-g1/manual/workflow","unlisted":false}],"href":"/iot/products/sensor-gateways/wired-mbus-g1/manual/"},{"type":"category","label":"Hardware Variants","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Hybrid Gateway","href":"/iot/products/sensor-gateways/wired-mbus-g1/hardware-variants/dinrail-v1/","docId":"products/sensor-gateways/wired-mbus-g1/hardware-variants/dinrail-v1/index","unlisted":false}]}],"href":"/iot/products/sensor-gateways/wired-mbus-g1/"}]}],"href":"/iot/products/"},{"type":"category","label":"Components","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Firmware","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"app-nrf9160-wmbus","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Introduction","href":"/iot/components/firmware/app-nrf9160-wmbus/introduction","docId":"components/firmware/app-nrf9160-wmbus/introduction","unlisted":false},{"type":"link","label":"Configuration Parameter","href":"/iot/components/firmware/app-nrf9160-wmbus/configuration-parameter","docId":"components/firmware/app-nrf9160-wmbus/configuration-parameter","unlisted":false},{"type":"link","label":"LoRaWAN Communication","href":"/iot/components/firmware/app-nrf9160-wmbus/lorawan-communication-protocol","docId":"components/firmware/app-nrf9160-wmbus/lorawan-communication-protocol","unlisted":false},{"type":"link","label":"Cellular IoT Communication","href":"/iot/components/firmware/app-nrf9160-wmbus/cellular-iot-communication-protocol","docId":"components/firmware/app-nrf9160-wmbus/cellular-iot-communication-protocol","unlisted":false},{"type":"link","label":"Changelog","href":"/iot/components/firmware/app-nrf9160-wmbus/changelog","docId":"components/firmware/app-nrf9160-wmbus/changelog","unlisted":false}]},{"type":"link","label":"app-hybrid-modbus","href":"/iot/components/firmware/app-hybrid-modbus/","docId":"components/firmware/app-hybrid-modbus/index","unlisted":false}],"href":"/iot/components/firmware/"},{"type":"category","label":"Device Enclosures","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Spelsberg TG PC 1208-6-o","href":"/iot/components/enclosures/spelsberg_TG_PC_1208-6-o","docId":"components/enclosures/spelsberg_TG_PC_1208-6-o","unlisted":false}],"href":"/iot/components/enclosures/"},{"type":"category","label":"Batteries","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"13Ah LSH20 Cell","href":"/iot/components/batteries/single-saft-lsh20","docId":"components/batteries/single-saft-lsh20","unlisted":false},{"type":"link","label":"19Ah Battery Pack","href":"/iot/components/batteries/19ah-battery-pack","docId":"components/batteries/19ah-battery-pack","unlisted":false},{"type":"link","label":"38Ah Battery Pack","href":"/iot/components/batteries/38ah-battery-pack","docId":"components/batteries/38ah-battery-pack","unlisted":false}]},{"type":"link","label":"Hardware Addon Modules","href":"/iot/components/addon-modules/","docId":"components/addon-modules/index","unlisted":false},{"type":"link","label":"Postprocesses","href":"/iot/components/modifications/","docId":"components/modifications/index","unlisted":false}],"href":"/iot/components/"},{"type":"category","label":"Configuration","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Lobaro USB Config Adapter","href":"/iot/configuration/usb-config-adapter","docId":"configuration/usb-config-adapter","unlisted":false},{"type":"link","label":"Lobaro Config Tool","href":"/iot/configuration/lobaro-config-tool","docId":"configuration/lobaro-config-tool","unlisted":false},{"type":"link","label":"MBUS Reception Filtering","href":"/iot/configuration/meter-reception-filter-config","docId":"configuration/meter-reception-filter-config","unlisted":false},{"type":"link","label":"LoRaWAN Downlink Config","href":"/iot/configuration/lorawan-downlink-config","docId":"configuration/lorawan-downlink-config","unlisted":false},{"type":"link","label":"CRON Configuration","href":"/iot/configuration/cron-configuration","docId":"configuration/cron-configuration","unlisted":false},{"type":"link","label":"LTE Network Configuration","href":"/iot/configuration/lte-network-configuration","docId":"configuration/lte-network-configuration","unlisted":false},{"type":"link","label":"OBIS-Code Configuration","href":"/iot/configuration/obis-code-configuration","docId":"configuration/obis-code-configuration","unlisted":false}],"href":"/iot/configuration/"},{"type":"category","label":"IoT Platform","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Integrations (TODO)","href":"/iot/platform/integrations/","docId":"platform/integrations/index","unlisted":false},{"type":"category","label":"Administration","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Changelog","href":"/iot/platform/administration/changelog","docId":"platform/administration/changelog","unlisted":false},{"type":"link","label":"Datasources","href":"/iot/platform/administration/datasources","docId":"platform/administration/datasources","unlisted":false},{"type":"link","label":"Monitoring","href":"/iot/platform/administration/monitoring","docId":"platform/administration/monitoring","unlisted":false},{"type":"link","label":"Server Certificates","href":"/iot/platform/administration/server-certificates","docId":"platform/administration/server-certificates","unlisted":false},{"type":"link","label":"Server Configuration","href":"/iot/platform/administration/server-configuration","docId":"platform/administration/server-configuration","unlisted":false}],"href":"/iot/platform/administration/"},{"type":"category","label":"Devices","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Downlinks","href":"/iot/platform/devices/downlinks","docId":"platform/devices/downlinks","unlisted":false}],"href":"/iot/platform/devices/"},{"type":"category","label":"Hosting & Licensing","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Lobaro Direct+","href":"/iot/platform/license/direct+/","docId":"platform/license/direct+/index","unlisted":false}],"href":"/iot/platform/license/"},{"type":"category","label":"3rd Party Devices","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Dragino","href":"/iot/platform/3rd-party/dragino","docId":"platform/3rd-party/dragino","unlisted":false}]},{"type":"link","label":"FAQ","href":"/iot/platform/faq","docId":"platform/faq","unlisted":false},{"type":"category","label":"parser","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"M-Bus Parser","href":"/iot/platform/parser/mbus-parser","docId":"platform/parser/mbus-parser","unlisted":false}]}],"href":"/iot/platform/"},{"type":"category","label":"Knowledge Base","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Wireless M-BUS","href":"/iot/knowledge-base/wireless-mbus","docId":"knowledge-base/wireless-mbus","unlisted":false},{"type":"link","label":"Modbus","href":"/iot/knowledge-base/modbus","docId":"knowledge-base/modbus","unlisted":false}],"href":"/iot/knowledge-base/"}],"collapsed":true,"collapsible":true}]},"docs":{"components/addon-modules/index":{"id":"components/addon-modules/index","title":"Addon Modules Overview","description":"","sidebar":"allDocSidebar"},"components/batteries/19ah-battery-pack":{"id":"components/batteries/19ah-battery-pack","title":"19Ah Battery Pack","description":"* Voltage: 3.6V","sidebar":"allDocSidebar"},"components/batteries/38ah-battery-pack":{"id":"components/batteries/38ah-battery-pack","title":"38Ah Battery Pack","description":"* Voltage: 3.6V","sidebar":"allDocSidebar"},"components/batteries/single-saft-lsh20":{"id":"components/batteries/single-saft-lsh20","title":"13Ah LSH20 Cell","description":"* Voltage: 3.6V","sidebar":"allDocSidebar"},"components/enclosures/index":{"id":"components/enclosures/index","title":"Device Enclosures","description":"","sidebar":"allDocSidebar"},"components/enclosures/spelsberg_TG_PC_1208-6-o":{"id":"components/enclosures/spelsberg_TG_PC_1208-6-o","title":"Spelsberg TG PC 1208-6-o","description":"\'Spelsberg{i.r(e),i.d(e,{assets:()=>o,contentTitle:()=>s,default:()=>f,frontMatter:()=>a,metadata:()=>l,toc:()=>d});var t=i(4848),r=i(8453);const a={},s="M-Bus Parser",l={id:"platform/parser/mbus-parser",title:"M-Bus Parser",description:"The Lobaro M-Bus Parser is used from device Parsers and available as web API",source:"@site/docs/platform/parser/mbus-parser.md",sourceDirName:"platform/parser",slug:"/platform/parser/mbus-parser",permalink:"/iot/platform/parser/mbus-parser",draft:!1,unlisted:!1,editUrl:"https://github.com/lobaro/iot/tree/master/docs/platform/parser/mbus-parser.md",tags:[],version:"current",frontMatter:{},sidebar:"allDocSidebar",previous:{title:"FAQ",permalink:"/iot/platform/faq"},next:{title:"Knowledge Base",permalink:"/iot/knowledge-base/"}},o={},d=[{value:"Supported Features and Manufacturers",id:"supported-features-and-manufacturers",level:2},{value:"Manufacturer Specifics",id:"manufacturer-specifics",level:3},{value:"API Response Example",id:"api-response-example",level:2},{value:"Important Fields",id:"important-fields",level:3},{value:"Encryption state",id:"encryption-state",level:3},{value:"VifUnit & VifQuantity",id:"vifunit--vifquantity",level:3}];function c(n){const e={a:"a",admonition:"admonition",br:"br",code:"code",h1:"h1",h2:"h2",h3:"h3",li:"li",p:"p",pre:"pre",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,r.R)(),...n.components},{Details:i}=e;return i||function(n,e){throw new Error("Expected "+(e?"component":"object")+" `"+n+"` to be defined: you likely forgot to import, pass, or provide it.")}("Details",!0),(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(e.h1,{id:"m-bus-parser",children:"M-Bus Parser"}),"\n",(0,t.jsxs)(e.p,{children:["The Lobaro M-Bus Parser is used from device Parsers and available as web API\nat ",(0,t.jsx)(e.a,{href:"https://platform.lobaro.com/#/wmbus/parser",children:"https://platform.lobaro.com/#/wmbus/parser"})]}),"\n",(0,t.jsx)(e.p,{children:"Supported formats:"}),"\n",(0,t.jsxs)(e.ul,{children:["\n",(0,t.jsx)(e.li,{children:"M-Bus (Meter-Bus)"}),"\n",(0,t.jsx)(e.li,{children:"wM-Bus (Wireless M-Bus)"}),"\n",(0,t.jsxs)(e.li,{children:["Sensus RF BUP (\nsee ",(0,t.jsx)(e.a,{href:"https://www.xylem.com/siteassets/industries--applications/resources/comm-networks/en---sensusrf-brochure.pdf",children:"SensusRF Brochure"}),")"]}),"\n",(0,t.jsxs)(e.li,{children:["\xb5line (see ",(0,t.jsx)(e.a,{href:"https://www.mue-line.de/",children:"https://www.mue-line.de/"}),")"]}),"\n"]}),"\n",(0,t.jsx)(e.admonition,{type:"note",children:(0,t.jsx)(e.p,{children:"An Platform Account an license is required to use the wMbus Parser. We offer trial licenses for testing."})}),"\n",(0,t.jsx)(e.h2,{id:"supported-features-and-manufacturers",children:"Supported Features and Manufacturers"}),"\n",(0,t.jsxs)(e.p,{children:["We support almost the full M-Bus (EN 13757) and OMS specification.",(0,t.jsx)(e.br,{}),"\n","This leads to support of almost ",(0,t.jsx)(e.strong,{children:"all devices"})," on the market."]}),"\n",(0,t.jsx)(e.p,{children:(0,t.jsx)(e.strong,{children:"Notable Features are:"})}),"\n",(0,t.jsxs)(e.ul,{children:["\n",(0,t.jsxs)(e.li,{children:["Decryption Modes","\n",(0,t.jsxs)(e.ul,{children:["\n",(0,t.jsx)(e.li,{children:"Mode 3 (DES with IV)"}),"\n",(0,t.jsx)(e.li,{children:"Mode 5 (AES with CBC)"}),"\n",(0,t.jsx)(e.li,{children:"Mode 7 (AES with CBC and KDF)"}),"\n",(0,t.jsx)(e.li,{children:"Mode 9 (AES with GCM)"}),"\n",(0,t.jsx)(e.li,{children:"0xFE - Counter-Mode AES-128 (AES128 with CTR)"}),"\n",(0,t.jsx)(e.li,{children:"DIEHL Prios Proprietary encryption"}),"\n"]}),"\n"]}),"\n",(0,t.jsxs)(e.li,{children:["Headers","\n",(0,t.jsxs)(e.ul,{children:["\n",(0,t.jsx)(e.li,{children:"All Manufacturer Codes"}),"\n",(0,t.jsxs)(e.li,{children:["Most headers including:","\n",(0,t.jsxs)(e.ul,{children:["\n",(0,t.jsx)(e.li,{children:"0x8C (Extended Connection Layer 1)"}),"\n",(0,t.jsx)(e.li,{children:"0x8D (Extended Connection Layer 2)"}),"\n",(0,t.jsx)(e.li,{children:"0x8E (Extended Connection Layer 3)"}),"\n",(0,t.jsx)(e.li,{children:"0x8F (Extended Connection Layer 4)"}),"\n",(0,t.jsx)(e.li,{children:"0x90 (Auth and Fragmentation Layer)"}),"\n",(0,t.jsx)(e.li,{children:"0x70 (Error)"}),"\n",(0,t.jsx)(e.li,{children:"All Short Headers (4 Bytes) e.g. 0x72"}),"\n",(0,t.jsx)(e.li,{children:"All Long Headers (12 Bytes) e.g. 0x7A"}),"\n",(0,t.jsx)(e.li,{children:"0x72 (Short Header)"}),"\n",(0,t.jsx)(e.li,{children:"and more"}),"\n"]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,t.jsxs)(e.li,{children:["Data Records","\n",(0,t.jsxs)(e.ul,{children:["\n",(0,t.jsx)(e.li,{children:"All DIFs and VIFs and most extensions"}),"\n",(0,t.jsx)(e.li,{children:"All data formats"}),"\n",(0,t.jsx)(e.li,{children:"All units"}),"\n",(0,t.jsx)(e.li,{children:"All quantities"}),"\n",(0,t.jsx)(e.li,{children:"Compact Frames"}),"\n"]}),"\n"]}),"\n",(0,t.jsx)(e.li,{children:"Format Frames"}),"\n"]}),"\n",(0,t.jsx)(e.h3,{id:"manufacturer-specifics",children:"Manufacturer Specifics"}),"\n",(0,t.jsx)(e.p,{children:"Some Telegrams contain manufacturer specific data. We try to parse support as many as possible.\nEven if we do not parse the data, it's available from the result in binary form."}),"\n",(0,t.jsxs)(e.ul,{children:["\n",(0,t.jsx)(e.li,{children:"SensusRF Bubble UP (Proprietary Radio)"}),"\n",(0,t.jsx)(e.li,{children:"DIEHL Real Data (Proprietary Encryption)"}),"\n",(0,t.jsx)(e.li,{children:"QUNDIS Walkby (Proprietary Format)"}),"\n"]}),"\n",(0,t.jsx)(e.p,{children:(0,t.jsx)(e.strong,{children:"Smoke Detector Status Information:"})}),"\n",(0,t.jsxs)(e.ul,{children:["\n",(0,t.jsx)(e.li,{children:"EI Electronics"}),"\n",(0,t.jsx)(e.li,{children:"Sontex"}),"\n",(0,t.jsx)(e.li,{children:"Zenner"}),"\n",(0,t.jsx)(e.li,{children:"QUNDIS"}),"\n"]}),"\n",(0,t.jsx)(e.p,{children:"Various fixes and workarounds for manufacturer specific bugs that do not follow the specification."}),"\n",(0,t.jsxs)(e.admonition,{type:"info",children:[(0,t.jsx)(e.p,{children:"The list is not exhaustive. Other manufacturers and features might be supported as well."}),(0,t.jsx)(e.p,{children:"If in doubt, please contact us."})]}),"\n",(0,t.jsx)(e.h2,{id:"api-response-example",children:"API Response Example"}),"\n",(0,t.jsx)(e.p,{children:"The following is an example of the parsing result of an encrypted example telegram from the OMS specification:"}),"\n",(0,t.jsxs)(e.p,{children:[(0,t.jsx)(e.strong,{children:"Telegram:"}),"\n",(0,t.jsx)(e.code,{children:"2e44931578563412330333637a2a0020055923c95aaa26d1b2e7493b2a8b013ec4a6f6d3529b520edff0ea6defc955b29d6d69ebf3ec8a"})]}),"\n",(0,t.jsxs)(e.p,{children:[(0,t.jsx)(e.strong,{children:"Key:"}),"\n",(0,t.jsx)(e.code,{children:"0102030405060708090A0B0C0D0E0F11"})]}),"\n",(0,t.jsxs)(i,{children:[(0,t.jsx)("summary",{children:(0,t.jsx)(e.strong,{children:"JSON Response"})}),(0,t.jsx)(e.pre,{children:(0,t.jsx)(e.code,{className:"language-json",children:'{\n "Raw": "0x2e4493157856341233037a2a0020055923c95aaa26d1b2e7493b013ec4a6f6d3529b520edff0ea6defc99d6d69ebf3",\n "RawWithCrc": "0x2e44931578563412330333637a2a0020055923c95aaa26d1b2e7493b2a8b013ec4a6f6d3529b520edff0ea6defc955b29d6d69ebf3ec8a",\n "FrameFormat": "A",\n "Length": 46,\n "CField": "0x44",\n "CFieldString": "0x44 (SND_NR)",\n "MField": "0x9315",\n "MFieldCodeString": "ELS",\n "MFieldLongString": "Elster GmbH, Germany, Europe",\n "Id": 305419896,\n "IdString": "12345678",\n "Version": 51,\n "Device": "0x03",\n "DeviceString": "Gas",\n "CiField": "0x7a",\n "HeaderKnown": true,\n "PayloadKnown": true,\n "CrcValid": true,\n "HasCrc": true,\n "SourceType": "WMBUS",\n "IsCompactFrame": false,\n "FormatSignature": 61330,\n "FormatFrame": "0x0c14046d02fd17",\n "ParserVersion": "1.11.3",\n "Header": {\n "Serial": 0,\n "IdString": "",\n "ManufacturerCode": 0,\n "MFieldCodeString": "",\n "MFieldLongString": "",\n "Version": 0,\n "DeviceType": "0x00",\n "DeviceString": "",\n "EncryptionMode": 5,\n "EncryptionModeString": "AES with CBC",\n "EncryptedBlocks": 2,\n "HopCount": 0,\n "IsAccessible": false,\n "IsBidirectionalMode": false,\n "IsSynchronous": false,\n "ReservedBit": false,\n "TelegramType": 0,\n "AccessNumber": 42,\n "StatusByte": 0,\n "ConfigField": [\n 32,\n 5\n ]\n },\n "Ell": null,\n "Afl": null,\n "Body": {\n "Raw": "0x2f2f0c1427048502046d32371f1502fd1700002f2f2f2f2f2f2f2f2f2f2f2f2f",\n "DataRecords": [\n {\n "DifDataLength": 4,\n "DifFunctionString": "Current Value",\n "DifDataFormat": "BCD (8 digits)",\n "DifSubunit": 0,\n "VifUnit": "m^3",\n "VifQuantity": "Volume",\n "VifExponent": 0.01,\n "VifEDescription": "",\n "Value": 2850427,\n "ValueScaled": 28504.27,\n "ValueString": "28504.27",\n "Tariff": 0,\n "StorageNo": 0,\n "DifVif": "0x0c14",\n "Data": "0x27048502"\n },\n {\n "DifDataLength": 4,\n "DifFunctionString": "Current Value",\n "DifDataFormat": "signed binary (32 bits), or date/time in F format",\n "DifSubunit": 0,\n "VifUnit": "",\n "VifQuantity": "Time & Date",\n "VifExponent": 1,\n "VifEDescription": "",\n "Value": 354367282,\n "ValueScaled": 354367282,\n "ValueString": "2008-05-31T23:50:00Z",\n "Tariff": 0,\n "StorageNo": 0,\n "DifVif": "0x046d",\n "Data": "0x32371f15"\n },\n {\n "DifDataLength": 2,\n "DifFunctionString": "Current Value",\n "DifDataFormat": "signed binary (16 bits), or date in G format",\n "DifSubunit": 0,\n "VifUnit": "",\n "VifQuantity": "Error flags",\n "VifExponent": 1,\n "VifEDescription": "",\n "Value": 0,\n "ValueScaled": 0,\n "ValueString": "0",\n "Tariff": 0,\n "StorageNo": 0,\n "DifVif": "0x02fd17",\n "Data": "0x0000"\n }\n ],\n "PayloadKnown": true,\n "IsEncrypted": false,\n "DecryptionFailed": false,\n "BlockCiField": 0\n },\n "KeyIdentifier": "6CDF4E13B88E3B890A803C4EECF8B89D60916C2E4E3C5CB32818F06A56BB60B5"\n}\n'})})]}),"\n",(0,t.jsx)(e.h3,{id:"important-fields",children:"Important Fields"}),"\n",(0,t.jsxs)(e.table,{children:[(0,t.jsx)(e.thead,{children:(0,t.jsxs)(e.tr,{children:[(0,t.jsx)(e.th,{children:"Field"}),(0,t.jsx)(e.th,{children:"Description"})]})}),(0,t.jsxs)(e.tbody,{children:[(0,t.jsxs)(e.tr,{children:[(0,t.jsx)(e.td,{children:"ParserVersion"}),(0,t.jsxs)(e.td,{children:["Version of the Parser (e.g. ",(0,t.jsx)(e.code,{children:"1.11.3"}),")"]})]}),(0,t.jsxs)(e.tr,{children:[(0,t.jsx)(e.td,{children:"Raw"}),(0,t.jsx)(e.td,{children:"Raw telegram data as passed to the API, might contain a CRC or not"})]}),(0,t.jsxs)(e.tr,{children:[(0,t.jsx)(e.td,{children:"RawWithCrc"}),(0,t.jsx)(e.td,{children:"The Raw Telegram with CRC, CRC is added when not already present in Raw"})]}),(0,t.jsxs)(e.tr,{children:[(0,t.jsx)(e.td,{children:"IsEncrypted"}),(0,t.jsxs)(e.td,{children:[(0,t.jsx)(e.code,{children:"true"})," if the parsed telegram is still encrypted"]})]}),(0,t.jsxs)(e.tr,{children:[(0,t.jsx)(e.td,{children:"DecryptionFailed"}),(0,t.jsxs)(e.td,{children:["true if the parser tied to decrypt the telegram without success.",(0,t.jsx)("br",{})," Can be used in conjunction with IsEncrypted to detect if the telegram was encrypted (see below)."]})]}),(0,t.jsxs)(e.tr,{children:[(0,t.jsx)(e.td,{children:"PayloadKnown"}),(0,t.jsx)(e.td,{children:"If the payload of the telegram (related to the CI field) is known to the parser and can be parsed"})]}),(0,t.jsxs)(e.tr,{children:[(0,t.jsx)(e.td,{children:"BodyParseError"}),(0,t.jsx)(e.td,{children:"Error while parsing the payload body"})]}),(0,t.jsxs)(e.tr,{children:[(0,t.jsx)(e.td,{children:"FormatFrame"}),(0,t.jsx)(e.td,{children:"The FormatFrame containing all DIB (Data Information Blocks) without the values"})]}),(0,t.jsxs)(e.tr,{children:[(0,t.jsx)(e.td,{children:"FormatSignature"}),(0,t.jsx)(e.td,{children:"Unique signature of the DifVif structure of all DataRecords (hash of FormatFrame). If any DifVif changes, the FormatSignature does change as well."})]}),(0,t.jsxs)(e.tr,{children:[(0,t.jsx)(e.td,{children:"KeyIdentifier"}),(0,t.jsx)(e.td,{children:"Unique identifier that contains the Hash of the used key. Useful for Key lookups without leaking the actual key."})]})]})]}),"\n",(0,t.jsx)(e.h3,{id:"encryption-state",children:"Encryption state"}),"\n",(0,t.jsxs)(e.table,{children:[(0,t.jsx)(e.thead,{children:(0,t.jsxs)(e.tr,{children:[(0,t.jsx)(e.th,{children:"IsEncrypted"}),(0,t.jsx)(e.th,{children:"DecryptionFailed"}),(0,t.jsx)(e.th,{children:"Meaning"})]})}),(0,t.jsxs)(e.tbody,{children:[(0,t.jsxs)(e.tr,{children:[(0,t.jsx)(e.td,{children:(0,t.jsx)(e.code,{children:"true"})}),(0,t.jsx)(e.td,{children:(0,t.jsx)(e.code,{children:"true"})}),(0,t.jsx)(e.td,{children:"No valid key"})]}),(0,t.jsxs)(e.tr,{children:[(0,t.jsx)(e.td,{children:(0,t.jsx)(e.code,{children:"false"})}),(0,t.jsx)(e.td,{children:(0,t.jsx)(e.code,{children:"false"})}),(0,t.jsx)(e.td,{children:"Telegram not encrypted"})]}),(0,t.jsxs)(e.tr,{children:[(0,t.jsx)(e.td,{children:(0,t.jsx)(e.code,{children:"true"})}),(0,t.jsx)(e.td,{children:(0,t.jsx)(e.code,{children:"false"})}),(0,t.jsx)(e.td,{children:"Telegram is encrypted but parser can not decrypt it (e.g. unknown algorithm)"})]}),(0,t.jsxs)(e.tr,{children:[(0,t.jsx)(e.td,{children:(0,t.jsx)(e.code,{children:"false"})}),(0,t.jsx)(e.td,{children:(0,t.jsx)(e.code,{children:"true"})}),(0,t.jsx)(e.td,{children:"Plain telegram where decryption failed - should not happen"})]})]})]}),"\n",(0,t.jsx)(e.h3,{id:"vifunit--vifquantity",children:"VifUnit & VifQuantity"}),"\n",(0,t.jsx)(e.p,{children:"There are a many valid combinations of VifUnit & VifQuantity. All possible values are listed below."}),"\n",(0,t.jsx)(e.p,{children:"Lines without VifUnit have an empty string as Unit."}),"\n",(0,t.jsx)(i,{children:(0,t.jsx)(e.pre,{children:(0,t.jsx)(e.code,{children:"VifQuantity: (Enhanced) Identification\nVifQuantity: Access Code Developer\nVifQuantity: Access Code Operator\nVifQuantity: Access Code System Operator\nVifQuantity: Access Code User\nVifQuantity: Access Number\nVifQuantity: Any VIF\nVifQuantity: Bus Address\nVifQuantity: Control signal\nVifQuantity: Cumulation counter\nVifQuantity: Customer\nVifQuantity: Customer location\nVifQuantity: Data container for wMBus\nVifQuantity: Datacontainer for manufactuerer specific protocol\nVifQuantity: Date\nVifQuantity: Date and time of battery change\nVifQuantity: Day of week\nVifQuantity: Device type\nVifQuantity: Digital Input\nVifQuantity: Digital Output\nVifQuantity: Dimensionless\nVifQuantity: Error flags\nVifQuantity: Error mask\nVifQuantity: Fabrication No\nVifQuantity: Firmware version\nVifQuantity: First storage # for cyclic storage\nVifQuantity: Hardware version\nVifQuantity: Last storage # for cyclic storage\nVifQuantity: Manufacturer\nVifQuantity: Manufacturer specific\nVifQuantity: Manufacturer specific data\nVifQuantity: Number of counter stops\nVifQuantity: Parameter set identification\nVifQuantity: Password\nVifQuantity: Receive window management\nVifQuantity: Remote control\nVifQuantity: Reset counter\nVifQuantity: Retry\nVifQuantity: Security key\nVifQuantity: Size of storage block\nVifQuantity: Software version\nVifQuantity: Special supplier information\nVifQuantity: State of parameter activation\nVifQuantity: Summertime (begin, end, deviation\nVifQuantity: Time & Date\nVifQuantity: Time point of day change\nVifQuantity: Week number\nVifUnit: A, VifQuantity: Current\nVifUnit: American gallon, VifQuantity: Volume\nVifUnit: American gallon/h, VifQuantity: Volume flow\nVifUnit: American gallon/min, VifQuantity: Volume flow\nVifUnit: Baud, VifQuantity: Baudrate\nVifUnit: Bittimes, VifQuantity: Response delay time\nVifUnit: Currency units, VifQuantity: Credit\nVifUnit: Currency units, VifQuantity: Debit\nVifUnit: GJ, VifQuantity: Energy\nVifUnit: Hz, VifQuantity: Frequency\nVifUnit: J, VifQuantity: Energy\nVifUnit: J, VifQuantity: Power\nVifUnit: J/h, VifQuantity: Power\nVifUnit: K, VifQuantity: Temperature difference\nVifUnit: MCal, VifQuantity: Energy\nVifUnit: Relative humidity, VifQuantity: %\nVifUnit: Reserved, VifQuantity: Reserved\nVifUnit: Units for H.C.A., VifQuantity: H.C.A.\nVifUnit: V, VifQuantity: Voltage\nVifUnit: W, VifQuantity: Cumul count max power\nVifUnit: W, VifQuantity: Power\nVifUnit: Wh, VifQuantity: Energy\nVifUnit: bar, VifQuantity: Pressure\nVifUnit: d, VifQuantity: Remaining battery\nVifUnit: dBm, VifQuantity: Receiver sensitivity\nVifUnit: feet^3, VifQuantity: Volume\nVifUnit: kVA, VifQuantity: Apparent power\nVifUnit: kVA/h, VifQuantity: Apparent energy\nVifUnit: kVAR, VifQuantity: Reactive power\nVifUnit: kVAR/h, VifQuantity: Reactive energy\nVifUnit: kg, VifQuantity: Mass\nVifUnit: kg/h, VifQuantity: Mass flow\nVifUnit: m^3, VifQuantity: Volume\nVifUnit: m^3/h, VifQuantity: Volume flow\nVifUnit: m^3/min, VifQuantity: Volume flow\nVifUnit: m^3/s, VifQuantity: Volume flow\nVifUnit: s, VifQuantity: Averaging Duration\nVifUnit: s, VifQuantity: Duration since last cumulation\nVifUnit: s, VifQuantity: Duration since last readout\nVifUnit: s, VifQuantity: Interval of data transmission\nVifUnit: s, VifQuantity: On time\nVifUnit: s, VifQuantity: Operating time\nVifUnit: s, VifQuantity: Operating time battery\nVifUnit: s, VifQuantity: Period of tariff\nVifUnit: s, VifQuantity: Point in Time\nVifUnit: s, VifQuantity: Storage interval\nVifUnit: \xb0, VifQuantity: Phase U-U\nVifUnit: \xb0, VifQuantity: Phase U-l\nVifUnit: \xb0C, VifQuantity: Cold / Warm Temperature Limit\nVifUnit: \xb0C, VifQuantity: External temperature\nVifUnit: \xb0C, VifQuantity: Flow temperature\nVifUnit: \xb0C, VifQuantity: Return temperature\nVifUnit: \xb0F, VifQuantity: Cold / Warm Temperature Limit\nVifUnit: \xb0F, VifQuantity: External temperature\nVifUnit: \xb0F, VifQuantity: Flow temperature\nVifUnit: \xb0F, VifQuantity: Return temperature\nVifUnit: \xb0F, VifQuantity: Temperature difference\n"})})})]})}function f(n={}){const{wrapper:e}={...(0,r.R)(),...n.components};return e?(0,t.jsx)(e,{...n,children:(0,t.jsx)(c,{...n})}):c(n)}},8453:(n,e,i)=>{i.d(e,{R:()=>s,x:()=>l});var t=i(6540);const r={},a=t.createContext(r);function s(n){const e=t.useContext(a);return t.useMemo((function(){return"function"==typeof n?n(e):{...e,...n}}),[e,n])}function l(n){let e;return e=n.disableParentContext?"function"==typeof n.components?n.components(r):n.components||r:s(n.components),t.createElement(a.Provider,{value:e},n.children)}}}]); \ No newline at end of file diff --git a/assets/js/1d8bdfb7.56c0744d.js b/assets/js/1d8bdfb7.56c0744d.js new file mode 100644 index 00000000..6db4759f --- /dev/null +++ b/assets/js/1d8bdfb7.56c0744d.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunklobaro_docs=self.webpackChunklobaro_docs||[]).push([[7225],{4426:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>l,contentTitle:()=>s,default:()=>h,frontMatter:()=>a,metadata:()=>i,toc:()=>d});var o=r(4848),n=r(8453);const a={title:"FAQ"},s="FAQ - Lobaro Platform",i={id:"platform/faq",title:"FAQ",description:"Why is the Lobaro Platform mandatory for our NB-IoT Sensors & Gateways?",source:"@site/docs/platform/faq.md",sourceDirName:"platform",slug:"/platform/faq",permalink:"/iot/platform/faq",draft:!1,unlisted:!1,editUrl:"https://github.com/lobaro/iot/tree/master/docs/platform/faq.md",tags:[],version:"current",frontMatter:{title:"FAQ"},sidebar:"allDocSidebar",previous:{title:"Dragino",permalink:"/iot/platform/3rd-party/dragino"},next:{title:"M-Bus Parser",permalink:"/iot/platform/parser/mbus-parser"}},l={},d=[{value:"Why is the Lobaro Platform mandatory for our NB-IoT Sensors & Gateways?",id:"why-is-the-lobaro-platform-mandatory-for-our-nb-iot-sensors--gateways",level:2}];function c(e){const t={h1:"h1",h2:"h2",li:"li",p:"p",strong:"strong",ul:"ul",...(0,n.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(t.h1,{id:"faq---lobaro-platform",children:"FAQ - Lobaro Platform"}),"\n",(0,o.jsx)(t.h2,{id:"why-is-the-lobaro-platform-mandatory-for-our-nb-iot-sensors--gateways",children:"Why is the Lobaro Platform mandatory for our NB-IoT Sensors & Gateways?"}),"\n",(0,o.jsx)(t.p,{children:"This question sometimes arises from integrators who run their own type of IoT platform tailored to a particular use-case\nand don't want an intermediate between their system and the IoT hardware to integrate. In contrast to this our platform\nis primary considered as a head end system for device management of Lobaro and 3rd party sensors and gateways. It's\nmeant as secure, stable\nand scalable abstraction layer to the actual hardware complexity and gives the following benefits to the integrator or\nend-user:"}),"\n",(0,o.jsxs)(t.ul,{children:["\n",(0,o.jsxs)(t.li,{children:[(0,o.jsx)(t.strong,{children:"Encrypted data transfers using UDP and NB-IoT"}),", client and server certificate-based, using DTLS, while still being\nable to use battery life friendly UDP transfers with little overhead."]}),"\n",(0,o.jsx)(t.li,{children:"Administration of client and server certificates."}),"\n",(0,o.jsxs)(t.li,{children:[(0,o.jsx)(t.strong,{children:"Remote configuration"})," of sensors via simple APIs (Web UI, REST)."]}),"\n",(0,o.jsxs)(t.li,{children:["Support for ",(0,o.jsx)(t.strong,{children:"Firmware Updates"})," Over The Air (FOTA)."]}),"\n",(0,o.jsxs)(t.li,{children:[(0,o.jsx)(t.strong,{children:"Scalability"}),", even with thousands of devices."]}),"\n",(0,o.jsxs)(t.li,{children:[(0,o.jsx)(t.strong,{children:"Intermediate storage"})," for sensor data before further processing in the downstream application."]}),"\n",(0,o.jsxs)(t.li,{children:[(0,o.jsx)(t.strong,{children:"Data insight and export"})," independent of downstream application via CSV export or REST API."]}),"\n",(0,o.jsxs)(t.li,{children:[(0,o.jsx)(t.strong,{children:"Integration with LoRaWAN Network Servers"})," like ChirpStack, TTN / TTI, Lotiot, and many more ..."]}),"\n",(0,o.jsxs)(t.li,{children:[(0,o.jsx)(t.strong,{children:"Unified API for downstream applications"})," across different connectivity technologies on the device side (e.g.\nNB-IoT,\nLoRaWAN, wireless MBUS, LAN)."]}),"\n",(0,o.jsx)(t.li,{children:"Quickly bring IoT applications to market by focusing on the use case and the actual data without having to deal with\nhardware and firmware implementation details or properly secured data transfers from the sensor to the cloud."}),"\n",(0,o.jsxs)(t.li,{children:[(0,o.jsx)(t.strong,{children:"Low hardware requirements"})," for the server of the Lobaro Platform. Small setups can run on the same server next to\nthe\nuse-case specific platform or even an Raspberry PI for embedded use-cases. Bigger setups can be auto scaled in cloud\nenvironments."]}),"\n",(0,o.jsxs)(t.li,{children:["Internal APIs between hardware and Lobaro Platform can be changed, e.g. for firmware extensions, without compromising\na ",(0,o.jsx)(t.strong,{children:"stable API to the downstream system"})," and thus increasing the stability of the end application."]}),"\n"]}),"\n",(0,o.jsxs)(t.p,{children:["As one might see, all these functionality require a high level of knowledge about the hardware and how it internally\nworks. ",(0,o.jsx)(t.strong,{children:"Lobaro can only provide support and guarantees that all features of our NB-IoT products are available and\nfunction as expected if the Lobaro Platform is also used as a counterpart."})]}),"\n",(0,o.jsx)(t.p,{children:"If using the Lobaro IoT platform is absolutely not an option many of our NB-IoT products can also be configured to use\nLoRaWAN uplinks which shifts the dependence to the used LoRaWAN network server beside the well-known challenges of\nLoRaWAN networks compared to cellular IoT. We also work on Direct MQTT support for some of our devices to allow direct\nintegrations with a custom broker."})]})}function h(e={}){const{wrapper:t}={...(0,n.R)(),...e.components};return t?(0,o.jsx)(t,{...e,children:(0,o.jsx)(c,{...e})}):c(e)}},8453:(e,t,r)=>{r.d(t,{R:()=>s,x:()=>i});var o=r(6540);const n={},a=o.createContext(n);function s(e){const t=o.useContext(a);return o.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function i(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(n):e.components||n:s(e.components),o.createElement(a.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/1d8bdfb7.f20f74dd.js b/assets/js/1d8bdfb7.f20f74dd.js deleted file mode 100644 index b1e5ac3d..00000000 --- a/assets/js/1d8bdfb7.f20f74dd.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunklobaro_docs=self.webpackChunklobaro_docs||[]).push([[7225],{4426:(e,t,o)=>{o.r(t),o.d(t,{assets:()=>l,contentTitle:()=>s,default:()=>h,frontMatter:()=>a,metadata:()=>i,toc:()=>d});var r=o(4848),n=o(8453);const a={title:"FAQ"},s="FAQ - Lobaro Platform",i={id:"platform/faq",title:"FAQ",description:"Why is the Lobaro Platform mandatory for our NB-IoT Sensors & Gateways?",source:"@site/docs/platform/faq.md",sourceDirName:"platform",slug:"/platform/faq",permalink:"/iot/platform/faq",draft:!1,unlisted:!1,editUrl:"https://github.com/lobaro/iot/tree/master/docs/platform/faq.md",tags:[],version:"current",frontMatter:{title:"FAQ"},sidebar:"allDocSidebar",previous:{title:"Dragino",permalink:"/iot/platform/3rd-party/dragino"},next:{title:"Knowledge Base",permalink:"/iot/knowledge-base/"}},l={},d=[{value:"Why is the Lobaro Platform mandatory for our NB-IoT Sensors & Gateways?",id:"why-is-the-lobaro-platform-mandatory-for-our-nb-iot-sensors--gateways",level:2}];function c(e){const t={h1:"h1",h2:"h2",li:"li",p:"p",strong:"strong",ul:"ul",...(0,n.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(t.h1,{id:"faq---lobaro-platform",children:"FAQ - Lobaro Platform"}),"\n",(0,r.jsx)(t.h2,{id:"why-is-the-lobaro-platform-mandatory-for-our-nb-iot-sensors--gateways",children:"Why is the Lobaro Platform mandatory for our NB-IoT Sensors & Gateways?"}),"\n",(0,r.jsx)(t.p,{children:"This question sometimes arises from integrators who run their own type of IoT platform tailored to a particular use-case\nand don't want an intermediate between their system and the IoT hardware to integrate. In contrast to this our platform\nis primary considered as a head end system for device management of Lobaro and 3rd party sensors and gateways. It's\nmeant as secure, stable\nand scalable abstraction layer to the actual hardware complexity and gives the following benefits to the integrator or\nend-user:"}),"\n",(0,r.jsxs)(t.ul,{children:["\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.strong,{children:"Encrypted data transfers using UDP and NB-IoT"}),", client and server certificate-based, using DTLS, while still being\nable to use battery life friendly UDP transfers with little overhead."]}),"\n",(0,r.jsx)(t.li,{children:"Administration of client and server certificates."}),"\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.strong,{children:"Remote configuration"})," of sensors via simple APIs (Web UI, REST)."]}),"\n",(0,r.jsxs)(t.li,{children:["Support for ",(0,r.jsx)(t.strong,{children:"Firmware Updates"})," Over The Air (FOTA)."]}),"\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.strong,{children:"Scalability"}),", even with thousands of devices."]}),"\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.strong,{children:"Intermediate storage"})," for sensor data before further processing in the downstream application."]}),"\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.strong,{children:"Data insight and export"})," independent of downstream application via CSV export or REST API."]}),"\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.strong,{children:"Integration with LoRaWAN Network Servers"})," like ChirpStack, TTN / TTI, Lotiot, and many more ..."]}),"\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.strong,{children:"Unified API for downstream applications"})," across different connectivity technologies on the device side (e.g.\nNB-IoT,\nLoRaWAN, wireless MBUS, LAN)."]}),"\n",(0,r.jsx)(t.li,{children:"Quickly bring IoT applications to market by focusing on the use case and the actual data without having to deal with\nhardware and firmware implementation details or properly secured data transfers from the sensor to the cloud."}),"\n",(0,r.jsxs)(t.li,{children:[(0,r.jsx)(t.strong,{children:"Low hardware requirements"})," for the server of the Lobaro Platform. Small setups can run on the same server next to\nthe\nuse-case specific platform or even an Raspberry PI for embedded use-cases. Bigger setups can be auto scaled in cloud\nenvironments."]}),"\n",(0,r.jsxs)(t.li,{children:["Internal APIs between hardware and Lobaro Platform can be changed, e.g. for firmware extensions, without compromising\na ",(0,r.jsx)(t.strong,{children:"stable API to the downstream system"})," and thus increasing the stability of the end application."]}),"\n"]}),"\n",(0,r.jsxs)(t.p,{children:["As one might see, all these functionality require a high level of knowledge about the hardware and how it internally\nworks. ",(0,r.jsx)(t.strong,{children:"Lobaro can only provide support and guarantees that all features of our NB-IoT products are available and\nfunction as expected if the Lobaro Platform is also used as a counterpart."})]}),"\n",(0,r.jsx)(t.p,{children:"If using the Lobaro IoT platform is absolutely not an option many of our NB-IoT products can also be configured to use\nLoRaWAN uplinks which shifts the dependence to the used LoRaWAN network server beside the well-known challenges of\nLoRaWAN networks compared to cellular IoT. We also work on Direct MQTT support for some of our devices to allow direct\nintegrations with a custom broker."})]})}function h(e={}){const{wrapper:t}={...(0,n.R)(),...e.components};return t?(0,r.jsx)(t,{...e,children:(0,r.jsx)(c,{...e})}):c(e)}},8453:(e,t,o)=>{o.d(t,{R:()=>s,x:()=>i});var r=o(6540);const n={},a=r.createContext(n);function s(e){const t=r.useContext(a);return r.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function i(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(n):e.components||n:s(e.components),r.createElement(a.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/2c53b313.2e22d807.js b/assets/js/2c53b313.2e22d807.js deleted file mode 100644 index 8b305c97..00000000 --- a/assets/js/2c53b313.2e22d807.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunklobaro_docs=self.webpackChunklobaro_docs||[]).push([[4867],{8133:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>l,contentTitle:()=>d,default:()=>c,frontMatter:()=>r,metadata:()=>s,toc:()=>a});var A=i(4848),t=i(8453);const r={},d="Administration",s={id:"platform/administration/index",title:"Administration",description:"admin",source:"@site/docs/platform/administration/index.md",sourceDirName:"platform/administration",slug:"/platform/administration/",permalink:"/iot/platform/administration/",draft:!1,unlisted:!1,editUrl:"https://github.com/lobaro/iot/tree/master/docs/platform/administration/index.md",tags:[],version:"current",frontMatter:{},sidebar:"allDocSidebar",previous:{title:"Integrations",permalink:"/iot/platform/integrations/"},next:{title:"Changelog",permalink:"/iot/platform/administration/changelog"}},l={},a=[{value:"Hardware",id:"hardware",level:2},{value:"Bulk Operations",id:"bulk-operations",level:3},{value:"New Hardware",id:"new-hardware",level:3},{value:"Import",id:"import",level:3},{value:"CSV Import File Format",id:"csv-import-file-format",level:4}];function o(e){const n={admonition:"admonition",code:"code",h1:"h1",h2:"h2",h3:"h3",h4:"h4",img:"img",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,t.R)(),...e.components};return(0,A.jsxs)(A.Fragment,{children:[(0,A.jsx)(n.h1,{id:"administration",children:"Administration"}),"\n",(0,A.jsx)(n.admonition,{title:"Required roles",type:"info",children:(0,A.jsx)(n.p,{children:"admin"})}),"\n",(0,A.jsx)(n.p,{children:'Global platform admins have access to the "Configuration" page from the main navigation.'}),"\n",(0,A.jsx)(n.p,{children:(0,A.jsx)(n.img,{alt:"nav-configuration.png",src:i(5091).A+"",width:"780",height:"90"})}),"\n",(0,A.jsx)(n.p,{children:"The Configuration page gives access to entities independent of an Organisation."}),"\n",(0,A.jsx)(n.h2,{id:"hardware",children:"Hardware"}),"\n",(0,A.jsx)(n.p,{children:"On the hardware page, all devices independent of the organisation can be managed."}),"\n",(0,A.jsx)(n.p,{children:"In the top right corner you can select different actions."}),"\n",(0,A.jsx)(n.p,{children:(0,A.jsx)(n.img,{alt:"actions.png",src:i(104).A+"",width:"385",height:"36"})}),"\n",(0,A.jsx)(n.h3,{id:"bulk-operations",children:"Bulk Operations"}),"\n",(0,A.jsx)(n.p,{children:"Select one or multiple devices from the list to execute bulk updates like changing of the Organisation or Device Type."}),"\n",(0,A.jsx)(n.p,{children:(0,A.jsx)(n.img,{alt:"bulk-operations.png",src:i(2354).A+"",width:"1195",height:"296"})}),"\n",(0,A.jsxs)(n.ul,{children:["\n",(0,A.jsx)(n.li,{children:"Select all relevant devices (search box and pagination can be used with out looking the selection)"}),"\n",(0,A.jsx)(n.li,{children:'Click "Bulk Operations"'}),"\n"]}),"\n",(0,A.jsx)(n.p,{children:(0,A.jsx)(n.img,{alt:"bulk-operations-update.png",src:i(7298).A+"",width:"973",height:"429"})}),"\n",(0,A.jsxs)(n.ul,{children:["\n",(0,A.jsx)(n.li,{children:"A list of devices to update is shown below the form"}),"\n",(0,A.jsx)(n.li,{children:'Select what properties update and click "Bulk Update"'}),"\n"]}),"\n",(0,A.jsx)(n.h3,{id:"new-hardware",children:"New Hardware"}),"\n",(0,A.jsx)(n.p,{children:"Create a new device. Each device needs:"}),"\n",(0,A.jsxs)(n.ul,{children:["\n",(0,A.jsx)(n.li,{children:"Address"}),"\n",(0,A.jsx)(n.li,{children:"Name (optional, default is the Address)"}),"\n",(0,A.jsx)(n.li,{children:'Device Type (optional, default is the "Generic Device")'}),"\n",(0,A.jsx)(n.li,{children:"Organisation (optional)"}),"\n"]}),"\n",(0,A.jsx)(n.h3,{id:"import",children:"Import"}),"\n",(0,A.jsx)(n.p,{children:"Import Hardware from a CSV file."}),"\n",(0,A.jsx)(n.h4,{id:"csv-import-file-format",children:"CSV Import File Format"}),"\n",(0,A.jsxs)(n.ul,{children:["\n",(0,A.jsx)(n.li,{children:"Column names in first row"}),"\n"]}),"\n",(0,A.jsx)(n.p,{children:(0,A.jsx)(n.strong,{children:"Columns:"})}),"\n",(0,A.jsxs)(n.table,{children:[(0,A.jsx)(n.thead,{children:(0,A.jsxs)(n.tr,{children:[(0,A.jsx)(n.th,{children:"Column Name"}),(0,A.jsx)(n.th,{children:"Required"}),(0,A.jsx)(n.th,{children:"Type"}),(0,A.jsx)(n.th,{children:"Description"})]})}),(0,A.jsxs)(n.tbody,{children:[(0,A.jsxs)(n.tr,{children:[(0,A.jsx)(n.td,{children:"address"}),(0,A.jsx)(n.td,{}),(0,A.jsx)(n.td,{children:"string"}),(0,A.jsxs)(n.td,{children:["Globally unique address of the device, e.g. IMEI or DevEUI.",(0,A.jsx)("br",{}),"The address that is used to assign Uplinks to the device."]})]}),(0,A.jsxs)(n.tr,{children:[(0,A.jsx)(n.td,{children:"name"}),(0,A.jsx)(n.td,{children:"optional"}),(0,A.jsx)(n.td,{children:"string"}),(0,A.jsxs)(n.td,{children:["User friendly name of the device.",(0,A.jsx)("br",{}),"Default: the address of the device."]})]}),(0,A.jsxs)(n.tr,{children:[(0,A.jsx)(n.td,{children:"serial"}),(0,A.jsx)(n.td,{children:"optional"}),(0,A.jsx)(n.td,{children:"string"}),(0,A.jsxs)(n.td,{children:["Serial number printed on the device.",(0,A.jsx)("br",{}),"For Lobaro devices, the firmware typically has no knowledge of the serial."]})]}),(0,A.jsxs)(n.tr,{children:[(0,A.jsx)(n.td,{children:"firmware"}),(0,A.jsx)(n.td,{children:"optional"}),(0,A.jsx)(n.td,{children:"string"}),(0,A.jsx)(n.td,{children:"Initial Firmware name and version on the device as user friendly string"})]}),(0,A.jsxs)(n.tr,{children:[(0,A.jsx)(n.td,{children:"config"}),(0,A.jsxs)(n.td,{children:[(0,A.jsx)(n.strong,{children:"deprecated"}),(0,A.jsx)("br",{}),"use cfg:",(0,A.jsx)(n.code,{children:""})]}),(0,A.jsx)(n.td,{children:"json"}),(0,A.jsxs)(n.td,{children:["A whole config can be imported as JSON object. e.g. ",(0,A.jsx)(n.code,{children:'{"key":"value"}'}),(0,A.jsx)("br",{}),"Warning: this requires a lot of escaping in CSV."]})]}),(0,A.jsxs)(n.tr,{children:[(0,A.jsxs)(n.td,{children:["cfg:",(0,A.jsx)(n.code,{children:""})]}),(0,A.jsx)(n.td,{children:"optional"}),(0,A.jsx)(n.td,{children:"string"}),(0,A.jsxs)(n.td,{children:["Initial config value of the device where ",(0,A.jsx)(n.code,{children:""})," is the technical name of the config value. ",(0,A.jsx)("br",{}),"Multiple of these columns can exist. ",(0,A.jsx)("br",{}),"e.g. ",(0,A.jsx)(n.code,{children:"cfg:DevEUI"})," to specify the config value of the parameter ",(0,A.jsx)(n.code,{children:"DevEUI"}),". ",(0,A.jsx)("br",{}),'Users can export the Initial config values on the "Hardware Activation" page based on the settings in the "Device Type"']})]})]})]}),"\n",(0,A.jsx)(n.p,{children:"There are preferred config values for some device classes. Technically the name can vary, but might need some custom setup inside the device type."}),"\n",(0,A.jsx)(n.p,{children:(0,A.jsx)(n.strong,{children:"LoRaWAN"})}),"\n",(0,A.jsx)(n.p,{children:"LoRaWAN specific config keys:"}),"\n",(0,A.jsxs)(n.ul,{children:["\n",(0,A.jsx)(n.li,{children:"DevEUI - Unique address of the LoRaWAN Device"}),"\n",(0,A.jsx)(n.li,{children:"JoinEUI - optional JoinEUI or AppEUI of the LoRaWAN device"}),"\n",(0,A.jsx)(n.li,{children:"AppKey - AppKey of the LoRaWAN Device"}),"\n",(0,A.jsx)(n.li,{children:"NwkKey - LoRaWAN 1.1 only"}),"\n"]})]})}function c(e={}){const{wrapper:n}={...(0,t.R)(),...e.components};return n?(0,A.jsx)(n,{...e,children:(0,A.jsx)(o,{...e})}):o(e)}},104:(e,n,i)=>{i.d(n,{A:()=>A});const A="data:image/png;base64,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"},7298:(e,n,i)=>{i.d(n,{A:()=>A});const A=i.p+"assets/images/bulk-operations-update-83cdf35011eae26a53ba60d9539360a6.png"},2354:(e,n,i)=>{i.d(n,{A:()=>A});const A=i.p+"assets/images/bulk-operations-c1fb9b3364eecf3d617070a2f8b998f2.png"},5091:(e,n,i)=>{i.d(n,{A:()=>A});const A="data:image/png;base64,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"},8453:(e,n,i)=>{i.d(n,{R:()=>d,x:()=>s});var A=i(6540);const t={},r=A.createContext(t);function d(e){const n=A.useContext(r);return A.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function s(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:d(e.components),A.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/2c53b313.c7962a41.js b/assets/js/2c53b313.c7962a41.js new file mode 100644 index 00000000..90e700f8 --- /dev/null +++ b/assets/js/2c53b313.c7962a41.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunklobaro_docs=self.webpackChunklobaro_docs||[]).push([[4867],{8133:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>l,contentTitle:()=>d,default:()=>c,frontMatter:()=>r,metadata:()=>s,toc:()=>a});var A=i(4848),t=i(8453);const r={},d="Administration",s={id:"platform/administration/index",title:"Administration",description:"admin",source:"@site/docs/platform/administration/index.md",sourceDirName:"platform/administration",slug:"/platform/administration/",permalink:"/iot/platform/administration/",draft:!1,unlisted:!1,editUrl:"https://github.com/lobaro/iot/tree/master/docs/platform/administration/index.md",tags:[],version:"current",frontMatter:{},sidebar:"allDocSidebar",previous:{title:"Integrations (TODO)",permalink:"/iot/platform/integrations/"},next:{title:"Changelog",permalink:"/iot/platform/administration/changelog"}},l={},a=[{value:"Hardware",id:"hardware",level:2},{value:"Bulk Operations",id:"bulk-operations",level:3},{value:"New Hardware",id:"new-hardware",level:3},{value:"Import",id:"import",level:3},{value:"CSV Import File Format",id:"csv-import-file-format",level:4}];function o(e){const n={admonition:"admonition",code:"code",h1:"h1",h2:"h2",h3:"h3",h4:"h4",img:"img",li:"li",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,t.R)(),...e.components};return(0,A.jsxs)(A.Fragment,{children:[(0,A.jsx)(n.h1,{id:"administration",children:"Administration"}),"\n",(0,A.jsx)(n.admonition,{title:"Required roles",type:"info",children:(0,A.jsx)(n.p,{children:"admin"})}),"\n",(0,A.jsx)(n.p,{children:'Global platform admins have access to the "Configuration" page from the main navigation.'}),"\n",(0,A.jsx)(n.p,{children:(0,A.jsx)(n.img,{alt:"nav-configuration.png",src:i(5091).A+"",width:"780",height:"90"})}),"\n",(0,A.jsx)(n.p,{children:"The Configuration page gives access to entities independent of an Organisation."}),"\n",(0,A.jsx)(n.h2,{id:"hardware",children:"Hardware"}),"\n",(0,A.jsx)(n.p,{children:"On the hardware page, all devices independent of the organisation can be managed."}),"\n",(0,A.jsx)(n.p,{children:"In the top right corner you can select different actions."}),"\n",(0,A.jsx)(n.p,{children:(0,A.jsx)(n.img,{alt:"actions.png",src:i(104).A+"",width:"385",height:"36"})}),"\n",(0,A.jsx)(n.h3,{id:"bulk-operations",children:"Bulk Operations"}),"\n",(0,A.jsx)(n.p,{children:"Select one or multiple devices from the list to execute bulk updates like changing of the Organisation or Device Type."}),"\n",(0,A.jsx)(n.p,{children:(0,A.jsx)(n.img,{alt:"bulk-operations.png",src:i(2354).A+"",width:"1195",height:"296"})}),"\n",(0,A.jsxs)(n.ul,{children:["\n",(0,A.jsx)(n.li,{children:"Select all relevant devices (search box and pagination can be used with out looking the selection)"}),"\n",(0,A.jsx)(n.li,{children:'Click "Bulk Operations"'}),"\n"]}),"\n",(0,A.jsx)(n.p,{children:(0,A.jsx)(n.img,{alt:"bulk-operations-update.png",src:i(7298).A+"",width:"973",height:"429"})}),"\n",(0,A.jsxs)(n.ul,{children:["\n",(0,A.jsx)(n.li,{children:"A list of devices to update is shown below the form"}),"\n",(0,A.jsx)(n.li,{children:'Select what properties update and click "Bulk Update"'}),"\n"]}),"\n",(0,A.jsx)(n.h3,{id:"new-hardware",children:"New Hardware"}),"\n",(0,A.jsx)(n.p,{children:"Create a new device. Each device needs:"}),"\n",(0,A.jsxs)(n.ul,{children:["\n",(0,A.jsx)(n.li,{children:"Address"}),"\n",(0,A.jsx)(n.li,{children:"Name (optional, default is the Address)"}),"\n",(0,A.jsx)(n.li,{children:'Device Type (optional, default is the "Generic Device")'}),"\n",(0,A.jsx)(n.li,{children:"Organisation (optional)"}),"\n"]}),"\n",(0,A.jsx)(n.h3,{id:"import",children:"Import"}),"\n",(0,A.jsx)(n.p,{children:"Import Hardware from a CSV file."}),"\n",(0,A.jsx)(n.h4,{id:"csv-import-file-format",children:"CSV Import File Format"}),"\n",(0,A.jsxs)(n.ul,{children:["\n",(0,A.jsx)(n.li,{children:"Column names in first row"}),"\n"]}),"\n",(0,A.jsx)(n.p,{children:(0,A.jsx)(n.strong,{children:"Columns:"})}),"\n",(0,A.jsxs)(n.table,{children:[(0,A.jsx)(n.thead,{children:(0,A.jsxs)(n.tr,{children:[(0,A.jsx)(n.th,{children:"Column Name"}),(0,A.jsx)(n.th,{children:"Required"}),(0,A.jsx)(n.th,{children:"Type"}),(0,A.jsx)(n.th,{children:"Description"})]})}),(0,A.jsxs)(n.tbody,{children:[(0,A.jsxs)(n.tr,{children:[(0,A.jsx)(n.td,{children:"address"}),(0,A.jsx)(n.td,{}),(0,A.jsx)(n.td,{children:"string"}),(0,A.jsxs)(n.td,{children:["Globally unique address of the device, e.g. IMEI or DevEUI.",(0,A.jsx)("br",{}),"The address that is used to assign Uplinks to the device."]})]}),(0,A.jsxs)(n.tr,{children:[(0,A.jsx)(n.td,{children:"name"}),(0,A.jsx)(n.td,{children:"optional"}),(0,A.jsx)(n.td,{children:"string"}),(0,A.jsxs)(n.td,{children:["User friendly name of the device.",(0,A.jsx)("br",{}),"Default: the address of the device."]})]}),(0,A.jsxs)(n.tr,{children:[(0,A.jsx)(n.td,{children:"serial"}),(0,A.jsx)(n.td,{children:"optional"}),(0,A.jsx)(n.td,{children:"string"}),(0,A.jsxs)(n.td,{children:["Serial number printed on the device.",(0,A.jsx)("br",{}),"For Lobaro devices, the firmware typically has no knowledge of the serial."]})]}),(0,A.jsxs)(n.tr,{children:[(0,A.jsx)(n.td,{children:"firmware"}),(0,A.jsx)(n.td,{children:"optional"}),(0,A.jsx)(n.td,{children:"string"}),(0,A.jsx)(n.td,{children:"Initial Firmware name and version on the device as user friendly string"})]}),(0,A.jsxs)(n.tr,{children:[(0,A.jsx)(n.td,{children:"config"}),(0,A.jsxs)(n.td,{children:[(0,A.jsx)(n.strong,{children:"deprecated"}),(0,A.jsx)("br",{}),"use cfg:",(0,A.jsx)(n.code,{children:""})]}),(0,A.jsx)(n.td,{children:"json"}),(0,A.jsxs)(n.td,{children:["A whole config can be imported as JSON object. e.g. ",(0,A.jsx)(n.code,{children:'{"key":"value"}'}),(0,A.jsx)("br",{}),"Warning: this requires a lot of escaping in CSV."]})]}),(0,A.jsxs)(n.tr,{children:[(0,A.jsxs)(n.td,{children:["cfg:",(0,A.jsx)(n.code,{children:""})]}),(0,A.jsx)(n.td,{children:"optional"}),(0,A.jsx)(n.td,{children:"string"}),(0,A.jsxs)(n.td,{children:["Initial config value of the device where ",(0,A.jsx)(n.code,{children:""})," is the technical name of the config value. ",(0,A.jsx)("br",{}),"Multiple of these columns can exist. ",(0,A.jsx)("br",{}),"e.g. ",(0,A.jsx)(n.code,{children:"cfg:DevEUI"})," to specify the config value of the parameter ",(0,A.jsx)(n.code,{children:"DevEUI"}),". ",(0,A.jsx)("br",{}),'Users can export the Initial config values on the "Hardware Activation" page based on the settings in the "Device Type"']})]})]})]}),"\n",(0,A.jsx)(n.p,{children:"There are preferred config values for some device classes. Technically the name can vary, but might need some custom setup inside the device type."}),"\n",(0,A.jsx)(n.p,{children:(0,A.jsx)(n.strong,{children:"LoRaWAN"})}),"\n",(0,A.jsx)(n.p,{children:"LoRaWAN specific config keys:"}),"\n",(0,A.jsxs)(n.ul,{children:["\n",(0,A.jsx)(n.li,{children:"DevEUI - Unique address of the LoRaWAN Device"}),"\n",(0,A.jsx)(n.li,{children:"JoinEUI - optional JoinEUI or AppEUI of the LoRaWAN device"}),"\n",(0,A.jsx)(n.li,{children:"AppKey - AppKey of the LoRaWAN Device"}),"\n",(0,A.jsx)(n.li,{children:"NwkKey - LoRaWAN 1.1 only"}),"\n"]})]})}function c(e={}){const{wrapper:n}={...(0,t.R)(),...e.components};return n?(0,A.jsx)(n,{...e,children:(0,A.jsx)(o,{...e})}):o(e)}},104:(e,n,i)=>{i.d(n,{A:()=>A});const A="data:image/png;base64,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"},7298:(e,n,i)=>{i.d(n,{A:()=>A});const A=i.p+"assets/images/bulk-operations-update-83cdf35011eae26a53ba60d9539360a6.png"},2354:(e,n,i)=>{i.d(n,{A:()=>A});const A=i.p+"assets/images/bulk-operations-c1fb9b3364eecf3d617070a2f8b998f2.png"},5091:(e,n,i)=>{i.d(n,{A:()=>A});const A="data:image/png;base64,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"},8453:(e,n,i)=>{i.d(n,{R:()=>d,x:()=>s});var A=i(6540);const t={},r=A.createContext(t);function d(e){const n=A.useContext(r);return A.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function s(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:d(e.components),A.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/63eca40f.4e7e749a.js b/assets/js/63eca40f.4e7e749a.js deleted file mode 100644 index b272a49e..00000000 --- a/assets/js/63eca40f.4e7e749a.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunklobaro_docs=self.webpackChunklobaro_docs||[]).push([[9111],{9844:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>d,contentTitle:()=>i,default:()=>u,frontMatter:()=>r,metadata:()=>a,toc:()=>l});var o=t(4848),s=t(8453);const r={sidebar_position:0},i="Knowledge Base",a={id:"knowledge-base/index",title:"Knowledge Base",description:"---",source:"@site/docs/knowledge-base/index.md",sourceDirName:"knowledge-base",slug:"/knowledge-base/",permalink:"/iot/knowledge-base/",draft:!1,unlisted:!1,editUrl:"https://github.com/lobaro/iot/tree/master/docs/knowledge-base/index.md",tags:[],version:"current",sidebarPosition:0,frontMatter:{sidebar_position:0},sidebar:"allDocSidebar",previous:{title:"FAQ",permalink:"/iot/platform/faq"},next:{title:"Wireless M-BUS",permalink:"/iot/knowledge-base/wireless-mbus"}},d={},l=[];function c(e){const n={h1:"h1",hr:"hr",p:"p",...(0,s.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(n.h1,{id:"knowledge-base",children:"Knowledge Base"}),"\n",(0,o.jsx)(n.hr,{}),"\n",(0,o.jsx)(n.p,{children:"General knowledge."})]})}function u(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,o.jsx)(n,{...e,children:(0,o.jsx)(c,{...e})}):c(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>i,x:()=>a});var o=t(6540);const s={},r=o.createContext(s);function i(e){const n=o.useContext(r);return o.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:i(e.components),o.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/63eca40f.cc3ed0df.js b/assets/js/63eca40f.cc3ed0df.js new file mode 100644 index 00000000..f9113ba5 --- /dev/null +++ b/assets/js/63eca40f.cc3ed0df.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunklobaro_docs=self.webpackChunklobaro_docs||[]).push([[9111],{9844:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>d,contentTitle:()=>i,default:()=>u,frontMatter:()=>r,metadata:()=>a,toc:()=>l});var o=t(4848),s=t(8453);const r={sidebar_position:0},i="Knowledge Base",a={id:"knowledge-base/index",title:"Knowledge Base",description:"---",source:"@site/docs/knowledge-base/index.md",sourceDirName:"knowledge-base",slug:"/knowledge-base/",permalink:"/iot/knowledge-base/",draft:!1,unlisted:!1,editUrl:"https://github.com/lobaro/iot/tree/master/docs/knowledge-base/index.md",tags:[],version:"current",sidebarPosition:0,frontMatter:{sidebar_position:0},sidebar:"allDocSidebar",previous:{title:"M-Bus Parser",permalink:"/iot/platform/parser/mbus-parser"},next:{title:"Wireless M-BUS",permalink:"/iot/knowledge-base/wireless-mbus"}},d={},l=[];function c(e){const n={h1:"h1",hr:"hr",p:"p",...(0,s.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(n.h1,{id:"knowledge-base",children:"Knowledge Base"}),"\n",(0,o.jsx)(n.hr,{}),"\n",(0,o.jsx)(n.p,{children:"General knowledge."})]})}function u(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,o.jsx)(n,{...e,children:(0,o.jsx)(c,{...e})}):c(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>i,x:()=>a});var o=t(6540);const s={},r=o.createContext(s);function i(e){const n=o.useContext(r);return o.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:i(e.components),o.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/b7192c96.72dd3746.js b/assets/js/b7192c96.72dd3746.js deleted file mode 100644 index 1248d3ee..00000000 --- a/assets/js/b7192c96.72dd3746.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunklobaro_docs=self.webpackChunklobaro_docs||[]).push([[7816],{286:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>a,contentTitle:()=>s,default:()=>p,frontMatter:()=>r,metadata:()=>c,toc:()=>l});var o=t(4848),i=t(8453);const r={},s="Hosting & Licensing",c={id:"platform/license/index",title:"Hosting & Licensing",description:"This page is not ready yet",source:"@site/docs/platform/license/index.md",sourceDirName:"platform/license",slug:"/platform/license/",permalink:"/iot/platform/license/",draft:!1,unlisted:!1,editUrl:"https://github.com/lobaro/iot/tree/master/docs/platform/license/index.md",tags:[],version:"current",frontMatter:{},sidebar:"allDocSidebar",previous:{title:"Downlinks",permalink:"/iot/platform/devices/downlinks"},next:{title:"Lobaro Direct+",permalink:"/iot/platform/license/direct+/"}},a={},l=[];function d(e){const n={admonition:"admonition",h1:"h1",p:"p",...(0,i.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(n.h1,{id:"hosting--licensing",children:"Hosting & Licensing"}),"\n",(0,o.jsx)(n.admonition,{title:"Work in progress",type:"warning",children:(0,o.jsx)(n.p,{children:"This page is not ready yet"})})]})}function p(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,o.jsx)(n,{...e,children:(0,o.jsx)(d,{...e})}):d(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>s,x:()=>c});var o=t(6540);const i={},r=o.createContext(i);function s(e){const n=o.useContext(r);return o.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function c(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:s(e.components),o.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/b7192c96.8b2eec73.js b/assets/js/b7192c96.8b2eec73.js new file mode 100644 index 00000000..964badb6 --- /dev/null +++ b/assets/js/b7192c96.8b2eec73.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunklobaro_docs=self.webpackChunklobaro_docs||[]).push([[7816],{286:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>l,contentTitle:()=>i,default:()=>h,frontMatter:()=>o,metadata:()=>c,toc:()=>d});var s=r(4848),n=r(8453);const o={},i="Hosting & Licensing",c={id:"platform/license/index",title:"Hosting & Licensing",description:"We offer different hosting and licensing options for the Lobaro IoT Platform. Please",source:"@site/docs/platform/license/index.md",sourceDirName:"platform/license",slug:"/platform/license/",permalink:"/iot/platform/license/",draft:!1,unlisted:!1,editUrl:"https://github.com/lobaro/iot/tree/master/docs/platform/license/index.md",tags:[],version:"current",frontMatter:{},sidebar:"allDocSidebar",previous:{title:"Downlinks",permalink:"/iot/platform/devices/downlinks"},next:{title:"Lobaro Direct+",permalink:"/iot/platform/license/direct+/"}},l={},d=[];function a(e){const t={a:"a",code:"code",h1:"h1",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,n.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(t.h1,{id:"hosting--licensing",children:"Hosting & Licensing"}),"\n",(0,s.jsxs)(t.p,{children:["We offer different hosting and licensing options for the Lobaro IoT Platform. Please\ncontact ",(0,s.jsx)(t.a,{href:"mailto:sales@lobaro.com",children:"sales@lobaro.com"})," for an individual offer."]}),"\n",(0,s.jsxs)(t.table,{children:[(0,s.jsx)(t.thead,{children:(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.th,{children:"Option"}),(0,s.jsx)(t.th,{children:"SaaS (Software as a Service)"}),(0,s.jsx)(t.th,{children:'Self hosted "Dedicated" (On-Premise)'})]})}),(0,s.jsxs)(t.tbody,{children:[(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{children:(0,s.jsx)(t.strong,{children:"Beste for"})}),(0,s.jsxs)(t.td,{children:["- Quick start ",(0,s.jsx)("br",{})," - Most customers"]}),(0,s.jsx)(t.td,{children:"When wwn infrastructure mist be used (e.g. for security reasons)"})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{children:(0,s.jsx)(t.strong,{children:"Hosting Type"})}),(0,s.jsx)(t.td,{children:"Lobaro Server shared with multiple customers"}),(0,s.jsx)(t.td,{children:"Customer infrastructure (Bare Metal, AWS, Azure, etc.)"})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{children:(0,s.jsx)(t.strong,{children:"Billing"})}),(0,s.jsxs)(t.td,{children:["- Free trial available ",(0,s.jsx)("br",{}),"- Base Fee ",(0,s.jsx)("br",{})," - Pay per Organisation & Device"]}),(0,s.jsxs)(t.td,{children:["- Base Fee ",(0,s.jsx)("br",{})," - Pay per Organisation & Device"]})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{children:(0,s.jsx)(t.strong,{children:"Domains"})}),(0,s.jsxs)(t.td,{children:["- ",(0,s.jsx)(t.a,{href:"https://platform.lobaro.com",children:"platform.lobaro.com"})]}),(0,s.jsxs)(t.td,{children:["- ",(0,s.jsx)(t.code,{children:"platform..lobaro.com"}),(0,s.jsx)("br",{})," - customer provided domains"]})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{children:(0,s.jsx)(t.strong,{children:"Platform admin access"})}),(0,s.jsx)(t.td,{children:"\u274c"}),(0,s.jsx)(t.td,{children:"\u2705"})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{children:(0,s.jsx)(t.strong,{children:"SSH access"})}),(0,s.jsx)(t.td,{children:"\u274c"}),(0,s.jsx)(t.td,{children:"\u2705"})]}),(0,s.jsxs)(t.tr,{children:[(0,s.jsx)(t.td,{children:(0,s.jsx)(t.strong,{children:"Price"})}),(0,s.jsxs)(t.td,{children:["Please contact ",(0,s.jsx)(t.a,{href:"mailto:sales@lobaro.com",children:"sales@lobaro.com"})]}),(0,s.jsxs)(t.td,{children:["Please contact ",(0,s.jsx)(t.a,{href:"mailto:sales@lobaro.com",children:"sales@lobaro.com"})]})]})]})]})]})}function h(e={}){const{wrapper:t}={...(0,n.R)(),...e.components};return t?(0,s.jsx)(t,{...e,children:(0,s.jsx)(a,{...e})}):a(e)}},8453:(e,t,r)=>{r.d(t,{R:()=>i,x:()=>c});var s=r(6540);const n={},o=s.createContext(n);function i(e){const t=s.useContext(o);return s.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function c(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(n):e.components||n:i(e.components),s.createElement(o.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/bb44c6b0.ae0a9a4d.js b/assets/js/bb44c6b0.ae0a9a4d.js deleted file mode 100644 index e9e68d6e..00000000 --- a/assets/js/bb44c6b0.ae0a9a4d.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunklobaro_docs=self.webpackChunklobaro_docs||[]).push([[2346],{1866:(A,e,n)=>{n.r(e),n.d(e,{assets:()=>l,contentTitle:()=>o,default:()=>c,frontMatter:()=>r,metadata:()=>t,toc:()=>d});var i=n(4848),s=n(8453);const r={sidebar_position:0,title:"Overview"},o="Lobaro IoT Platform",t={id:"platform/index",title:"Overview",description:"---",source:"@site/docs/platform/index.md",sourceDirName:"platform",slug:"/platform/",permalink:"/iot/platform/",draft:!1,unlisted:!1,editUrl:"https://github.com/lobaro/iot/tree/master/docs/platform/index.md",tags:[],version:"current",sidebarPosition:0,frontMatter:{sidebar_position:0,title:"Overview"},sidebar:"allDocSidebar",previous:{title:"OBIS-Code Configuration",permalink:"/iot/configuration/obis-code-configuration"},next:{title:"Integrations",permalink:"/iot/platform/integrations/"}},l={},d=[{value:"Features",id:"features",level:2},{value:"Overview",id:"overview",level:2}];function a(A){const e={a:"a",code:"code",h1:"h1",h2:"h2",hr:"hr",img:"img",li:"li",p:"p",strong:"strong",ul:"ul",...(0,s.R)(),...A.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(e.h1,{id:"lobaro-iot-platform",children:"Lobaro IoT Platform"}),"\n",(0,i.jsx)(e.hr,{}),"\n",(0,i.jsxs)(e.p,{children:["The Lobaro IoT Platform operates as a ",(0,i.jsx)(e.strong,{children:"Head End System for IoT Devices"}),". The Platform is optimized for but not limited\nto handle Lobaro devices."]}),"\n",(0,i.jsxs)(e.ul,{children:["\n",(0,i.jsxs)(e.li,{children:["Public Lobaro instance: ",(0,i.jsx)(e.a,{href:"https://platform.lobaro.com/",children:"platform.lobaro.com"})]}),"\n",(0,i.jsxs)(e.li,{children:["For On-Premise hosting check out ",(0,i.jsx)(e.a,{href:"./license",children:"Hosting & Licensing"})]}),"\n"]}),"\n",(0,i.jsx)(e.p,{children:"The documentation will always reference the Public Lobaro instance."}),"\n",(0,i.jsx)(e.p,{children:(0,i.jsx)(e.img,{alt:"img.png",src:n(252).A+"",width:"2656",height:"1506"})}),"\n",(0,i.jsx)(e.h2,{id:"features",children:"Features"}),"\n",(0,i.jsxs)(e.ul,{children:["\n",(0,i.jsx)(e.li,{children:"Multi tenant (Organisations) with branding / white labeling"}),"\n",(0,i.jsx)(e.li,{children:"IoT Device Management"}),"\n",(0,i.jsx)(e.li,{children:"Support for all Lobaro Devices"}),"\n",(0,i.jsx)(e.li,{children:"Possibility to integrate 3rd party IoT Devices (LoRaWAN, NB-IoT, ...)"}),"\n",(0,i.jsx)(e.li,{children:"Device configuration"}),"\n",(0,i.jsx)(e.li,{children:"Firmware updates"}),"\n",(0,i.jsx)(e.li,{children:"Data parsing and persistence"}),"\n",(0,i.jsxs)(e.li,{children:["Device protocols:","\n",(0,i.jsxs)(e.ul,{children:["\n",(0,i.jsx)(e.li,{children:"LoRaWAN Network Server"}),"\n",(0,i.jsx)(e.li,{children:"CoAP"}),"\n",(0,i.jsx)(e.li,{children:"HTTP"}),"\n",(0,i.jsx)(e.li,{children:"Manufacturer specifics"}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(e.li,{children:["Connect devices via:","\n",(0,i.jsxs)(e.ul,{children:["\n",(0,i.jsx)(e.li,{children:"LoRaWAN"}),"\n",(0,i.jsx)(e.li,{children:"NB-IoT"}),"\n",(0,i.jsx)(e.li,{children:"LTE-M"}),"\n",(0,i.jsx)(e.li,{children:"GSM / LTE"}),"\n",(0,i.jsx)(e.li,{children:"etc."}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(e.li,{children:"APIs to access or forward data to Use-Case specific applications"}),"\n",(0,i.jsx)(e.li,{children:"Scaling to handle thousands of devices"}),"\n"]}),"\n",(0,i.jsx)(e.p,{children:"We offer free access to the platform for tests and integrations (up to 12 Month) with the purchase of any Lobaro device\nin our shared instance. In addition we offer private instance hosting or On-Premise (any Server with Root access)."}),"\n",(0,i.jsx)(e.h2,{id:"overview",children:"Overview"}),"\n",(0,i.jsx)(e.p,{children:(0,i.jsx)(e.img,{alt:"img.png",src:n(344).A+"",width:"921",height:"114"})}),"\n",(0,i.jsx)(e.p,{children:"You can find your organisations name next to the Logo. Admins can change their organisation by clicking the small Icon\nnext to it."}),"\n",(0,i.jsxs)(e.ul,{children:["\n",(0,i.jsxs)(e.li,{children:[(0,i.jsx)(e.strong,{children:"Devices:"})," Manage all devices of your organisation."]}),"\n",(0,i.jsxs)(e.li,{children:[(0,i.jsx)(e.strong,{children:"Data:"})," See incoming data of all your devices."]}),"\n",(0,i.jsxs)(e.li,{children:[(0,i.jsx)(e.strong,{children:"Integrations:"})," Manage data connections to and from other applications. (See: ",(0,i.jsx)(e.a,{href:"/iot/platform/integrations/",children:"Integrations"}),")."]}),"\n",(0,i.jsxs)(e.li,{children:[(0,i.jsx)(e.strong,{children:"Organisation:"})," Manage all organisation related data."]}),"\n",(0,i.jsxs)(e.li,{children:[(0,i.jsx)(e.strong,{children:"Configuration:"})," Platform administration of global entities independent of the Organisation (Admins only)."]}),"\n",(0,i.jsxs)(e.li,{children:[(0,i.jsx)(e.strong,{children:"Tools:"})," wMbus Parser and Hardware Activation."]}),"\n"]}),"\n",(0,i.jsx)(e.p,{children:"The platform shows device data received via various data sources like LoRaWAN, NB.IoT, GSM, etc."}),"\n",(0,i.jsxs)(e.p,{children:["The connection to a device in handled by a ",(0,i.jsx)(e.code,{children:"Datasource"}),". Incoming data is mapped to a matching ",(0,i.jsx)(e.code,{children:"Device"}),". Raw data is saved\nas ",(0,i.jsx)(e.code,{children:"Uplink"})," Message. The ",(0,i.jsx)(e.code,{children:"Uplink"})," Message gets processed by a ",(0,i.jsx)(e.code,{children:"Parser"}),". The result of the parser is saved as ",(0,i.jsx)(e.code,{children:"Device Data"})," used\nfor visualization inside the dashboard and in outgoing APIs."]}),"\n",(0,i.jsx)(e.p,{children:(0,i.jsx)(e.img,{alt:"img.png",src:n(5395).A+"",width:"836",height:"82"})})]})}function c(A={}){const{wrapper:e}={...(0,s.R)(),...A.components};return e?(0,i.jsx)(e,{...A,children:(0,i.jsx)(a,{...A})}):a(A)}},5395:(A,e,n)=>{n.d(e,{A:()=>i});const i="data:image/png;base64,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"},344:(A,e,n)=>{n.d(e,{A:()=>i});const i="data:image/png;base64,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"},252:(A,e,n)=>{n.d(e,{A:()=>i});const i=n.p+"assets/images/platform-frontpage-7b857da575a3432831a1aec09d6d1683.png"},8453:(A,e,n)=>{n.d(e,{R:()=>o,x:()=>t});var i=n(6540);const s={},r=i.createContext(s);function o(A){const e=i.useContext(r);return i.useMemo((function(){return"function"==typeof A?A(e):{...e,...A}}),[e,A])}function t(A){let e;return e=A.disableParentContext?"function"==typeof A.components?A.components(s):A.components||s:o(A.components),i.createElement(r.Provider,{value:e},A.children)}}}]); \ No newline at end of file diff --git a/assets/js/bb44c6b0.ea3384aa.js b/assets/js/bb44c6b0.ea3384aa.js new file mode 100644 index 00000000..1a03c17d --- /dev/null +++ b/assets/js/bb44c6b0.ea3384aa.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunklobaro_docs=self.webpackChunklobaro_docs||[]).push([[2346],{1866:(A,e,n)=>{n.r(e),n.d(e,{assets:()=>l,contentTitle:()=>o,default:()=>c,frontMatter:()=>r,metadata:()=>t,toc:()=>d});var i=n(4848),s=n(8453);const r={sidebar_position:0,title:"Overview"},o="Lobaro IoT Platform",t={id:"platform/index",title:"Overview",description:"---",source:"@site/docs/platform/index.md",sourceDirName:"platform",slug:"/platform/",permalink:"/iot/platform/",draft:!1,unlisted:!1,editUrl:"https://github.com/lobaro/iot/tree/master/docs/platform/index.md",tags:[],version:"current",sidebarPosition:0,frontMatter:{sidebar_position:0,title:"Overview"},sidebar:"allDocSidebar",previous:{title:"OBIS-Code Configuration",permalink:"/iot/configuration/obis-code-configuration"},next:{title:"Integrations (TODO)",permalink:"/iot/platform/integrations/"}},l={},d=[{value:"Features",id:"features",level:2},{value:"Overview",id:"overview",level:2}];function a(A){const e={a:"a",code:"code",h1:"h1",h2:"h2",hr:"hr",img:"img",li:"li",p:"p",strong:"strong",ul:"ul",...(0,s.R)(),...A.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(e.h1,{id:"lobaro-iot-platform",children:"Lobaro IoT Platform"}),"\n",(0,i.jsx)(e.hr,{}),"\n",(0,i.jsxs)(e.p,{children:["The Lobaro IoT Platform operates as a ",(0,i.jsx)(e.strong,{children:"Head End System for IoT Devices"}),". The Platform is optimized for but not limited\nto handle Lobaro devices."]}),"\n",(0,i.jsxs)(e.ul,{children:["\n",(0,i.jsxs)(e.li,{children:["Public Lobaro instance: ",(0,i.jsx)(e.a,{href:"https://platform.lobaro.com/",children:"platform.lobaro.com"})]}),"\n",(0,i.jsxs)(e.li,{children:["For On-Premise hosting check out ",(0,i.jsx)(e.a,{href:"./license",children:"Hosting & Licensing"})]}),"\n"]}),"\n",(0,i.jsx)(e.p,{children:"The documentation will always reference the Public Lobaro instance."}),"\n",(0,i.jsx)(e.p,{children:(0,i.jsx)(e.img,{alt:"img.png",src:n(252).A+"",width:"2656",height:"1506"})}),"\n",(0,i.jsx)(e.h2,{id:"features",children:"Features"}),"\n",(0,i.jsxs)(e.ul,{children:["\n",(0,i.jsx)(e.li,{children:"Multi tenant (Organisations) with branding / white labeling"}),"\n",(0,i.jsx)(e.li,{children:"IoT Device Management"}),"\n",(0,i.jsx)(e.li,{children:"Support for all Lobaro Devices"}),"\n",(0,i.jsx)(e.li,{children:"Possibility to integrate 3rd party IoT Devices (LoRaWAN, NB-IoT, ...)"}),"\n",(0,i.jsx)(e.li,{children:"Device configuration"}),"\n",(0,i.jsx)(e.li,{children:"Firmware updates"}),"\n",(0,i.jsx)(e.li,{children:"Data parsing and persistence"}),"\n",(0,i.jsxs)(e.li,{children:["Device protocols:","\n",(0,i.jsxs)(e.ul,{children:["\n",(0,i.jsx)(e.li,{children:"LoRaWAN Network Server"}),"\n",(0,i.jsx)(e.li,{children:"CoAP"}),"\n",(0,i.jsx)(e.li,{children:"HTTP"}),"\n",(0,i.jsx)(e.li,{children:"Manufacturer specifics"}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(e.li,{children:["Connect devices via:","\n",(0,i.jsxs)(e.ul,{children:["\n",(0,i.jsx)(e.li,{children:"LoRaWAN"}),"\n",(0,i.jsx)(e.li,{children:"NB-IoT"}),"\n",(0,i.jsx)(e.li,{children:"LTE-M"}),"\n",(0,i.jsx)(e.li,{children:"GSM / LTE"}),"\n",(0,i.jsx)(e.li,{children:"etc."}),"\n"]}),"\n"]}),"\n",(0,i.jsx)(e.li,{children:"APIs to access or forward data to Use-Case specific applications"}),"\n",(0,i.jsx)(e.li,{children:"Scaling to handle thousands of devices"}),"\n"]}),"\n",(0,i.jsx)(e.p,{children:"We offer free access to the platform for tests and integrations (up to 12 Month) with the purchase of any Lobaro device\nin our shared instance. In addition we offer private instance hosting or On-Premise (any Server with Root access)."}),"\n",(0,i.jsx)(e.h2,{id:"overview",children:"Overview"}),"\n",(0,i.jsx)(e.p,{children:(0,i.jsx)(e.img,{alt:"img.png",src:n(344).A+"",width:"921",height:"114"})}),"\n",(0,i.jsx)(e.p,{children:"You can find your organisations name next to the Logo. Admins can change their organisation by clicking the small Icon\nnext to it."}),"\n",(0,i.jsxs)(e.ul,{children:["\n",(0,i.jsxs)(e.li,{children:[(0,i.jsx)(e.strong,{children:"Devices:"})," Manage all devices of your organisation."]}),"\n",(0,i.jsxs)(e.li,{children:[(0,i.jsx)(e.strong,{children:"Data:"})," See incoming data of all your devices."]}),"\n",(0,i.jsxs)(e.li,{children:[(0,i.jsx)(e.strong,{children:"Integrations:"})," Manage data connections to and from other applications. (See: ",(0,i.jsx)(e.a,{href:"/iot/platform/integrations/",children:"Integrations"}),")."]}),"\n",(0,i.jsxs)(e.li,{children:[(0,i.jsx)(e.strong,{children:"Organisation:"})," Manage all organisation related data."]}),"\n",(0,i.jsxs)(e.li,{children:[(0,i.jsx)(e.strong,{children:"Configuration:"})," Platform administration of global entities independent of the Organisation (Admins only)."]}),"\n",(0,i.jsxs)(e.li,{children:[(0,i.jsx)(e.strong,{children:"Tools:"})," wMbus Parser and Hardware Activation."]}),"\n"]}),"\n",(0,i.jsx)(e.p,{children:"The platform shows device data received via various data sources like LoRaWAN, NB.IoT, GSM, etc."}),"\n",(0,i.jsxs)(e.p,{children:["The connection to a device in handled by a ",(0,i.jsx)(e.code,{children:"Datasource"}),". Incoming data is mapped to a matching ",(0,i.jsx)(e.code,{children:"Device"}),". Raw data is saved\nas ",(0,i.jsx)(e.code,{children:"Uplink"})," Message. The ",(0,i.jsx)(e.code,{children:"Uplink"})," Message gets processed by a ",(0,i.jsx)(e.code,{children:"Parser"}),". The result of the parser is saved as ",(0,i.jsx)(e.code,{children:"Device Data"})," used\nfor visualization inside the dashboard and in outgoing APIs."]}),"\n",(0,i.jsx)(e.p,{children:(0,i.jsx)(e.img,{alt:"img.png",src:n(5395).A+"",width:"836",height:"82"})})]})}function c(A={}){const{wrapper:e}={...(0,s.R)(),...A.components};return e?(0,i.jsx)(e,{...A,children:(0,i.jsx)(a,{...A})}):a(A)}},5395:(A,e,n)=>{n.d(e,{A:()=>i});const i="data:image/png;base64,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"},344:(A,e,n)=>{n.d(e,{A:()=>i});const i="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA5kAAAByCAIAAABWX4KtAAAmP0lEQVR4Xu2dX2wcx53n9bIg36SH3YdFgBkBvoN4eqHgXCwccOQouEQk/CDO6gDPnS7xSAlk0WsopHPrnVUCY8TdKKTuQAy1B4HrrJWRzuvjxFGWk0DxEFgnQ+cg7ChRduYWWlFrK2hiV1gPEGGHBmHMxsJd36+qunuqq7p7ev5xOOL3g4ItVtV0V1f/+3R1VfU+EwAAAAAAgMFknxoBAAAAAADAgACXBQAAAAAAgwpcFgAAAAAADCpwWQAAAAAAMKjAZQEAAAAAwKAClwUAAAAAAIMKXBYAAAAAAAwqcFkAAAAAADCowGUBAAAAAMCgApcFAAAAAACDSh9cNpvNqlH9plgsqlEAAAAAAGDX0weX3bevDysNgER2txVpIDDMX183fzZr/sUx81LczFw0/3Ld3FAzAQAAAAD0kj443G4TR7hsG2TMwgHzpZj5rbT5g6z5M/ozab4RNWfJa8lx1dwAAAAAAL2hDw6328QRLtsSNfMTElbS1rK5qaaZJqntfvMlsls1AQAAAACgB/TB4XabOMJlW2LGfCtmfouMVk2wKZr3SWfROgsAAACAHaAPDrfbxBEuGx7hqQEiK0ibPzhiflONBQAAAADoNn1wuN0mjnDZ8Iya3wjZfyBqzq6ad9VYAAAAAICu0geH223iCJcNzz7zSyE7DyTNN9LmD9RYAAAAAICu0geH223iCJcNSdnc3G++pMb6kDELU/QfADpjvfjTtcKPQ4b314vq7wEAADzt9MHhdps47pjL1mo1NWqgKJr3w/eCXTXvxsxvqbEAtMKHH34w+7VXWgr0E3UpAAAAnmp2wuEUeiSOhmEsLS0dO3Zsn8TBgwdPnz5dDPysl+6yq6ur8XicfisvipZMy2/JR6lIFy9ePHLkiLwcUaRyuazmlqAixWIxOSabzVKRDhw4IC+KYq5fv95SkWi9s7OzyqZRCSmSSqvmdmOYv95nfkmN9WGmdu1f307+5je/URMACE1Tl/1vl78NlwUAgD1OT7QymH09cNlMJrN///5kMkkaKrsdqRsljY6Okq75uZrsspSfPI/ykzvK+WmZtGRaPuUM+Q3emZkZUSTFpGkV6XQ6Go2SHPtpqOyylJ8Ulv5UikT/ppipqSlaC5XNifeD1kXuS+ulgilFoj9FaUmy/Yok2G++VDTvq7FeTJmZ4+9+7fjx4x9++KGaBkJTujQ0PMTCwh01qXWquVNiafMlNWmXEuyy/+NPlyjP23/xP+GyAACwl+m+Vjal6y5Lvkj26aeqAiG7nq2hjsvSP0j1glWVlkDrIudTEyRIB8lTyTKDvZD0kVbnVyThslSYpqpKmSkPbaCaIEElIZunigooEiVRmSlbQJ6k+UY8RC/YsrkpRol95zvfGRkZ+clPfqLmAOGAy+oKS+GPUn9wp/TXjx7941/+4PvrxZ/CZQEAYC/TZa0MQ3ddlhxOeR3vBxkhuaMuasJlKf7AgQOeZqlAOUXDrZpgQ5JK1qjGekGFJ3dUY22XpcL4+bcCFYlyKq2tMrS0dDqtxnpBJY/H42qsTc38ZL/5UtPJtkbNbziTGKytrT3zzDNKdRm1Ty6u//3pfPnIG+vHbtymfyyVflWrfyrnASZc1stlSWTJYkWGN//8DSUVLgsAAHuNbmplSLrosoZhkJ4Gt8jKeFqmcFmKD2l7Jm+d9VuvaNzVjdmPqakpfb3CZYngFlmZgPWSR4bUfQGZesB6SWQDdJZkN25myGXlyPv373/+85+fm5sTf2ZKvzpwuTCV+3l6/UHReLy68RH9I3b9NkXSv+UfArhsgMgqvQvgsgAAsDfpmlaGp4suSwIa/G5dZ//+/YqDCpclEZQjmzLDUWO5mwaIoA4VhoqkRIoitSSgJl+1Z2uxX08GP2jtpLNqrITQWXLWsrnpRJLFXjd/dsB8acrM6B8G297epp311a9+dey7/3v0z9bLH32sZCBIZPcvFE7nWyjqU09Yl31SLd5ITR8fjfLM0WcnEueXCw+VBxvJZSn/1ZnE2CH+56HY2fn8PXfmJ7WNtWzq7ETssPhJ5Mjxcwu5UvWJnKm0wFc3fKFYpwUunuOZE7lHdnptI7/orGVoZGxi+tJKqSovoQm6yxbe/bFI8hRZuCwAAOxBuqaV4emiy5IFerZEBqDrrxBHvXE0GNEkrEfqYtoU3UFFkTzFNABy6GPHjimRTcXUk6b6S7aaNN8go91nfunfVL/2u//y+/SPUfMbfu21gv/y57dIZAP6ElAS6SxaZx3CuGz9QXbaMk4lRCYvl+qNjI7LJpJnIlrmQ9M3DWeRhdf0DCxEz6w4mUyzvPQcjz81v9BYoOWyW++lJyPqz7UVNUFxWRLZO6W/pv/+r7ff0i0WLgsAAHuTrmlleLrlsuJFvBrbDP1XQhyD1c0TcsSiu4sqWbJnY20wYjoCOUYUqVVNN73qNs1RIptCWxHyV4b562MX/9OfPWjeFF00HpOnGjW1yVZBtM4G+O6eornLbhdTljJGJl/LFtbLlUqxmM8k7PbUZM6wszouyzO/vJxnmQu516dEa+5wZKbw2M77MJs4MbOUK5QeVLdqNaOyunDSstXpvHNYygt0QjJfZT+P2+aaWFwt3ilX7hQLN1K23Y4v3JEc2x/FZelPCv/98ryusHBZAADYs6jqswPovtUe7YmjGCYlxwhxlGNCovdnbU8cPfW6jfZd00uv9UKGgfRa71jsxwsvvPCLX/xCjdUQHWTVWC/C53zqaeqyxo0pkSG26H4Y21xJCnGMpIuWNzbUM/7Ghpy3cmVcxE9eM+R4F49WEkJPL9jLk102MrWwbtStHgj14utCfCOzTGwb1O/Mx0T+E1lDTvBB72PQNMBlAQBgr9GOw3VIe+Ko0544mloB2nZZvQC6OJbL5YsXL8bj8WM29Gc+n1fy6HrdRpOzybsr6C6rxIShpQKEdNno0l8VDafdL4hM6Veks2rsnqSZyza6DeQaXZctSpcsoVyw+n04mWcKSov/w+ykUMwzq/7dWe3esadW7DzOAiOzt+Ql2jmH0togM+cnvPm2GXBZAAAATWnH4TqkPXHU0VUyJL1zWXlUGUntwYMHo/zbBNlstsihSPrJ6OgoJZHUOpn1IoVXSRl9aoVd4rK1+qf75n6kxvpAynvwyntq7J6kmcs61ugxNUE1lxC/Td4U2hgwj0EpLZbzvNNcWq/eWVk6n5i0x5M1gofLppymWobTgtvI2cDeIsewm7Be/Gnh3R/LwdHWP0r9gZJEmdXfAwAAeNppx+E6pD1x1NFVMiS6OLZXpIACUHzwhK/KNxf0IoVXyWB2icsatU/Cu2z5o4/3LxTU2D1Jn1zWyHkMDrODh8u6F9hVl9VxdNaZnAsAAMBeph2H65D2xFEnQCWD0cWxvSL5FUB8NbfpyC3KkOSYXkUKr5LB7BKXJUhPPafi0slW/iF2/bYauydp5rLV/BmRYSL7UE0rzYmko0sVEeGjnqbUx+B8Ycs0t27NiJVGz2QrVafFNaCPgbLA8oI1xsvdXsswci+IJK2fQyusF3/6t3/7f9RYAAAAe5J2HK5D2hNHHT+VbIouju0VybMAYq6ukLMikM5SZr0ALalkMD102c1/Mn/0M/OP3/y73z326/is+affM9//GzWPBOkpSaoa68XM2j2M/RI0c9nG2K+jc/L0W9LYr+cylso21FPpxlovzR0VC0nkmKY6K03LDxTO1ATNXdYZ+zWUeNtwJThjv86ubskJAAAAQLu043Ad0p446niqZBh0cWyvSJ4FSLby/TCTr510Vi9Sc5UMR69c9krO/J0vmv/h982v/AnpLAv072d+z/zCK8xxvXj1xq2DV95rOtmWUfvkwOVCyFFiTz2OVsbPZ5YW1VB4SHpYXhgTeficXHc2qptl15xcVgcDU552IHr83HK+WNmsbtxZXX55wuoR+9y80GHj2oSV7eR84UF1a7MsTacVxmVN89GqZdJiTq6KUX1Qcs3JdVdtsAUAAADaox2H65D2xFHHUyXDoItje0XSC1Cr1Q4cONC0d4HCgLlsbZsJK2nr+i89kr6eMX/7i+aNW0rK3Nzc5z73udGlH8+s3VOSFGLXbzfNs3dwXNYzWI21m4VZS2eVEIlfKXt8KyESUYdzschk9oGdt2GicoaJSbGWxvgwf5clx65k4vpCWBifvWWouQEAAIB2acfhOqQ9cdTRVTIkuji2VyS9APpXD8KQyWT0IvmqZIt032XJVj/7Zaatfvzwfaazduvs/fv3T5w4MT09/fHHHxu1T/YvFGZ9VLVW/zT+vZ9Hl/6qadvt3iGUy5rsG7al3Pz08+MjPD767MT0hWzxkdL2aann5LWNrXurC2cnjnDXHBlLzC6ubijPX49Ly+enRIbhw+OJCyuUwS6MY65BLsuoGYWrMwl7JgSxogoa3AEAAHSVdhyuQ9oTRx1dJUOii2N7RdILoMeEQS9AkEq2SJdddv2Xsqf6Qr77hVfo/2+99dZnPvOZN99800khnY1dv33kjfX8g4+cb4CVP/r4euUfDlwuTOV+DpEFAAAAQHjacbgOaU8cddoTR1MrgK6SIdELMDU1lc1m5Zgw6AXwVcnW6bLLfvbLrKdsU2rb/++Z+LUTyYmJCc9hcJnSr8ho9839iPyV/rt/oUB/rm58pOYDAAAAAAikHYfrkPbEUUdXyZDo4thekWZmZjKZjByTTCaVmDDoBfBVydbpssv+1r9r3ijL+b+n534S+89qrEb5I9bxQI0FAAAAAAhHOw7XIe2Jo057nVPFRwrkGKGSrQ7YMr00sT297qnLttdUTFtBpq7GVj5gHQxCciXHZjYAAAAAAOgl3dHKluiWy5KVRqNRNbYZugELlVxdXZUjw0BrV74Zqy88DGSNvXPZTCbjYaXN8G5gXv+l+W9fVCP9+OH7cFkAAAAA9JruaGVLdMtlTW6Trb5A19sphcuK72+Fh9zXUzf379+vCG5TejonFxWGiqTGBuI7s9jmP7E+BiH54zfZ1LMAAAAAAL2ka1oZni66bCaTicfjaqw/nmInXLZVB9WdWNDGtxJGR0d757Kmf1H9oFr1bV3+7S96TCvryck/DDVKDAAAAACgA7qmleHposvWajUSwfDdAyiz/upcuCzFHzt2TEnyg9RQ6XTrQEUiLfYcvK9DmQ8ePCgKIMd312WpMOFNXXyD1zfzV/7E/I8pNVKn8gH7Khj9FwAAAACgl3RNK8PTRZc1bVEL447JZNKzudFRSdLT06dPq8kaRf7V2YA1klvTogIyCEhkyZ5FZ9aeuqzJx3IdOXLEo9uAG8pA2XTdb1DbZk2zP3xfjVf47JdZHwMAAAAAgB7TTa0MSXdd1uTuSDq7tLTk52qklaRoJLKeGRyXpVQySPJLv1ZJykBroXUVm3XSzWazlO369etqgg0tgYrkdNLttcuaXGepSPl8Xk2woWo8cOBAkMgKxGe9/HSWZPer32IuCwAAAADQe7qslWEgb1tvCz/FNLmtkqqSq50+ffrixYtkbJSfvJP+TcoYjUYD+rA6LiugnJSffkW/pSXQcmhp9G9aMmWjtQQUQ4aKRD5Kdjg7O0s/F5twkXPw4EFahdw1Ygdc1rQbjGntSpHoT4qkpKaObnHjFtPZ/7qkzjVLgvuvTrLpC8LNQQsAAAAA0CF9cNlYuzQdwESWmclkSEZFfjEMq2lv2lqtpk9iQOui31K8WBT9m5bs2awbDBUpzedqFcuhf9CfujIqnR/Ig9uYSCsktHC9SE17RKiQrZ78QzatAYUvvMIUlv7xzO9hvBcAAAAAdpI+uCx4qqh8wJpp13/JehcAAAAAAOwscFkAAAAAADCowGUBAAAAAMCgApcFAAAAAACDClwWAAAAAAAMKnBZAAAAAAAwqMBlAQAAAADAoAKXBQAAAAAAgwpcFgAAAAAADCpwWQAAAAAAMKjAZQEAAAAAwKAClwUAAAAAAIMKXBYAAAAAAAwqcFkAAAAAADCowGUBAAAAAMCgApcFAAAAAACDClwWAAAAAAAMKnBZAAAAAAAwqMBlAQAAAADAoAKXBQAAAAAAgwpcFgAAAAAADCpwWQAAAAAAMKjAZQEAAAAAwKDSB5f9/jvfS732dQr0DzWts1QAAAAAALCn2GmXJQed/dorTlCUtJNUAAAAAACw19hpl0299nXZR+nPbqUCAAAAAIC9BlwWAAAAAAAMKjvtssH9BDpJ7YDSwtDQ8FAi90hNaB2xqPmSGr9bqOYSw6yErhB9dmL60kqp6spZusSSFu64IpvzpFrKzSevlNV4Ynsjf+nc5LMRvsap1Jp7fQAAAAAArbPTLms2G7/VSWq77D2XPTGztJixwgXLL4eHDk3fNJycbbrsnXm2qEt6BVTzZ9haRk7MpNlKk6m1mpoFAAAAAKBF+uCyu4+957Kaa1bX0jFW8vGlihXTZZd9mJ1kDp011ATQI4zcC5GRy14N5ADY1G+nRyLJfBcufXuWemnuUPTMapdeM3V3aaBDsDsGBrisCZcVGNemKClqJ3XZZf3igdbxI/rsROL8cuFhh+3WRvbE0CC57KOVhFQJw5HRyVMzy2vGlppv9yJOGRESucG4/dXX09HBddmaUbg6kxg7xOs8cuR4YvZqsfpEzdVj6sXXI93Tne4urYdU17OpsxNHIvyAPzzejUsW53Fp6ez4CNuhh2JnM4XNupphR9nlu0P4hlfo5FbLL8Ut3/r7DVzWDO2yNWNtefaUOM38zt6Gy1bXl2dPjkbFRfbkzPK6x+nA8tgLHBnTL8TV3ClKShXr5tZtsbTIdN5ejus6Ln5eMJpdTAJc1qxkjlLSqRWxAk+XDSrww0L6fCJ22H1G0dLuLk8eF/UgBbkA1VLO7kfLb0jnFnIl5YbECzORfWjWH6wu8CvdyCKzNCferBaXz0+JC+vI2LmF/IZ1CVTi1wx5sbsEtlNeyG7Uals8GJVC9rWJqLvLx9MPu4AmsvesStjaLBdupCYjQyNnVw01qwdb6/Pxl3fBLYc9szW9kjgYubPjSzt6z9j5NfaMzdXpw0MjJ1LZtbJBB0x1o5Rfnj4eGR6bKWyqeXcvD1emxzJel+PdjFF4dXw4MjF9dbX0oEpna/VBKX/1XPzU8kanDxLsCfzoBbqR1evbNePOysKL6cK2mqmXDNgJUrfvGltr6eGhdMH5s5NK64HLbm9vf/ObFz788AM1wQ1loGyUWU0IAVzWDOeyRv7soWE+aGl2jnUzTVuGdGg6Z0jZxKJmFi6NU1L8fJp3SE0Kl4pdKjWeMZ/QOXOIqduLKd5vNT17gi//zIrRWJpwtcRybj7Gm+smn5+YFS7Lr+PCkln3U/q58ObD53KB1/EglxUNY34u27TADwss/vUkE2KnP+6N0paIP88afRvxt6wf1e/MT/JqjJ0Vi01NczuPHp8vSV4uip1+eyUZYU8RVA+TfHiZFX8tG48wVU019stQ7Ep5iy88+mwy1dgLkcmru66pkm2FXe0ORi4Zlbp8PP1wl1XPwU22x2OeQwndeNZhH2jNZdnlorv3jGbs/Bp7Q728MMakR2u2N3JnIoPUl4kdMLv3PZ4n/KqbyAbeaNql78dn3wvQLl08kHrgst/97rXx8X///POTATpbLv8NZaBslFlNC0EfXDZ4/FYnqe3S1GXrlcvjQkZdl85aia6nw0PjC3cdR7Xb/Mdm8vKpbuWMpNftnPXy0svzRde9t1acO0q/nb3VkDgulJFoJJJ822hk5Ndxtt7brmbYrdtMeYfH5iv+r2WCXPZ2miWdt24PqsuGK7AlxPryPfsYPFplbhpJKv5tvE0aNyS/2RHFpnpQdoH9dt5dP5vibfV4bGwovlhuVAYXo+Ghc/nHjby7AR8PY00UTpcPqu3KjZm4MwtETjQ814sXhqKvF6Udzn4Vv2GwpZ5yVXh1PTMtGsgPs5871WiszYvnB3pImF6UqnezuPAizx8ZTS72/tWtp8tS8W5MDUfsa/STanHxnGj7p0eXJev4V160WZm37q2kxANeZDR+YWWjnUf91lFclm1UMv9wI3fBevSNnV2u8JIoHUvsPgmee5mz7SxE/RWdqtHLJeNWKn7Y2uOe2+69RqXA1eKS/eLY9X5D5KQd4bwCZksuGE7qzh4tW7dmfE/kh9n4UMS6cFn1X15mZRObWd/IpUQNN4I4+7yPLoao4a3bGetJm3aN/TQuUhvnr089sLNPPcvEazcnWHvBtTT5tGUHz3z+QWOHBJeqZ5SXnhs6yl+L+VKjY9V6R8daf65KV5WAM+LWjHJ4i9C4BzW6HyiprCbdvXpkJWWpyZtG5SprzhDZwp8gyu4IOEH6tDtsPFyWdkPKenNLm3l+ueQ6X/xTXS5bZ1ckcVKcSOXuNXvz68P29vZXvnKaPJXCu+++qyabJkWKVMo2GO2ywfNqdZLaAc1ctlaYpQzPzUvNqjbu9/L2oiRndRA5z65qDQkSd+fZ2SX5hxDK6AVZVsR1fOio3MprU1lkchnQV8/fZXl7xtDQdN46WFWX9UQrcEsuW7niV9pa/iyrRmftVrG15hYrXqvV0iV+r9LyizW65HsX4OOyvLRWfL10aTz26krlMdvn9UfFhZOR+DWD/Xs9HeW9UCzYjVwcyS6Xrd5MRiNTC2sbVf42tnD53NJdFm/kkiMn54uiU9rjcu7Vcftg21imJ4ErpS36Y9soXT1nvRDoHT4uy08cK75y5RzbhG32as1goxWnWPcSjlqHj1dTr2ZLmzUqfr1azp6JuI2/Z3i47NHY8cTCusE7ThTSY0PRV53WRKURyHcvi70Ze71Q5SlspGZkpmDfe9ipOjYeP7tM28v2V9C2a81OcoHZs2UkfrnI3vDWa9VKdvpwJMGei5yc47FTM7kKf61cybIm86sbPG2nj5bK5YjnKcMxci8MTYp6s+p/Kp2nI5/VATtOxtKFR6KGaXdEnKtBwNElajhBu6Za26JNv8bemSzfk1KtwvjUw93M9OXCBtt5dXEM8KdNjqYgsjxZpy0dPNt8h9w4NxJJhCxVr2jaaMebWthhXGWHEdve45ER5whs7YyQ/qyXFp6LJK+Vt+jx4EmNbexYxn5r1dxlj45NxOdW2UHwpLUTxOWygSdIf3aHg3og8Qa4MX62ssIahbmJ6OF00bLEwFRpF2+tzUQjM3l2g6hvPVhNv5ipdPCY+u1vX/LUWUdkKYMc3xI77bLB3zvoJLUDmrhs/b3UsDQoyo2RfZ5+O1OwDZAvKu2VtbzAHuY8k2w0ERRCmXpPvguzpjjZ81yI6QLstlUdT5etbxaXTh1i2yj1cAjlslqBPWIEHi4rqs672kWdH7VfLotiW/cnCRGfkBtlpXjf/B723E9UD5PjD/PrNatVSVhN3oj+nLiUs2YS535sXJuwzV52WZbHeUqRKC1EeG9jB9akLQ5mdrhO39QL1TP8XJbFHxLm7YYpi7PhfnVo0aiuHuPhsq6a5we2c8tx3zgD9jJLci4yptj2pL132KkaSfuqumvb1Vu1XGD2BOh+LKTSRp31spxH5U4v7GCz6nynjxa2yfpFxkI68nn9N8SRJ8mPssbbiWHvkT2uo4utznX8sGuXcxmRdCdUPbCVOpdoVUHkpZXY0lynLV38I65XZ/6l6hXNXJadicq5xh6w7SOnpTNC/pMqyrXYUppugtZlobnL6u0aDQJPENllg0+Q/uwOB+VA4s8M7i5qvC+yuKU2T7UqgZ6mhp+b78RfFXSd7YrImnBZThOXDRQg8Z7I+a1YlGe3FSUnH7x1Iz17asIe9mQHzWXdFw5tOTJCJf1v6pbLeoWRs1n5PazHqkMUuBWXDagrNb/fLuhWfH/x87BGu6yoDTVYVSf5K109nXcCyh094dGRWuwsNViHlnGLD70aO5e6ulLi7Vi9xc9lpXZZPpIvIR9+zq7U6rC2kZ+ffl5+I+lzpHUXD5d117zrluO+cQbsZdVlXTdvdqq6Xt0EbLt6q5YKzJapPv6x9drGwHK6HsXlOt/ho6WVdln5aU11Wddh4390sRqec2+6Uv/B9fCkWrw6k5CHwDorDXBZtfAMVuDIvJCQ4FL1Cn7RSN9Wox20o5HF0VFnPXq1dEYEuqyUU99wNdV9YLdwgkg7V1+O6wTpz+5wUA4k9qf7wViUUDy5BadKLmtul5dPHeKdENLZtQ3WKN4xjs5+//vvUOiKyJo777LB/QQ6Se2APrisM+aJDpHlXKG4XmThZnpyaEdcVv5WAhuhtVrRbj/KqkMWGC7bBpqHCaT+sl6XngZOvwLSvkb7XEiXVW+WLp7UjUohdykxMnRottfftvBx2UZ/2VphNsJfMkob6OeyG1fH2atkZ0IfzRh6hafLyhsVcOcO2svsYIhdKop7ydb6fExaLDtVpTMrcNvVW3WLLuuqQ/W43cGjpZX+sq76Z4fT2HxR/PBxcWHMPoQCjy6lhj1Sg+qhVng1Ej2TFV1H+I+letNqtTWX9S9Vz2jSXzaUy4Y8I+Q/68U0HzfCl1xnYyoavf60Da8XU/6m29IJ0prL9mF32PTIZTn1x9YkIdHjy67G3HZxdLZbImvuvMuazcZvdZLaLk1c1hoU5XrkcmAnttbHwPOuyV4Y2Q0bwkePpm+7jyZNBL1c1izNsUjvJ2PRK7fFPgaeuFcdtsAeMQIPl2XNJ6zadcdy+gS7+xjo14VuxfcX1Qk4fB4Du8fe49Vpz07YFqx7cfyGUVk8Kt1jJJflR6nXVrN46Q2sL+yQ834V2z30m5xpDdez+oyyQ2imMUEPu7c1Nspdh2zbY29s2Fm5wXifld2mE5cN3suPi+nPs1OSDZc55RqE4b6JBm+7equWCyz1z7Zgr1CdpyPNujyPW3NnjpaQ8xjo9W/Wiq+zgbzDfFbBxiDIwKMrWFNUl7Wx64HV+eyas1vZlKWhXNbjtGV9DJzOncGl6h2sF+9QYlkahcZ4YuReSxUe8Uu3MraEPV3YlzJ9jwScEcqfm9kk33Fs8umzGWkgMttw52ZB8FEEfi7b2gki79zgE6Rfu8NCOZDYIJ+jC3fk3eAMC26WqrmsBeuB5vTr6BRHZ7sismZfXHb30cxl+XXNu0eaOqLL12V5xxrHMr2ziU6iTV1WnKieY1nE2C+vnpEW7bps2AK34rLiIuLpUmLsV6NDj5+Ddiu+v7BSueaXXV1+WZlfVuqqv13fqhnFxUTcGnbDk2lHnEgmn5O7QMkuKwaRTPARMLWtzVLudWvslzq4JJeKv8YPUT5tReEBHx7Bx2fYo3x6Br/JyfPL5q+ec80vy9vbZm8a9SdsxEbu1YmoZBv8UExkH/CxHUIXTmRKj+tsHM/6fOJwRD96e0JrLst61B2dK4phSYF7uV54LRK/UtbUjeG+iQZvu7JGd4Efs7ZJZ2iLcWc5GYkkc4aU08dld/5oMa15CaPH7fll6bzR55fV6r++loqezFT0C2Tg0RWsKQ3d8a4H/oLl/KpBorxNp9jMZERyWTbC4Wj6vardHuySJ/JC6fQ0SlfpbG3M+hJcql4ingcOJRZXixXDqXn7VC0vSWO/qg9WWT04I5W1PRLaZTeWjw+l8s6B64K/vUlmK9X6dr1aWZk9NR7zddnWThDXg0rgCdK/3cHRTs/KFWl0V3UjT7tsbL5kP60FpUouW72ZSt0osUO3zsfbReSeTp3yzjvfe6d7jZJwWbO5y4odPzQUe73oupf4zsml3XUeF9M8p60aYhxYY5wso8qufYrwebqsuFjQ0tLvuQ6rTufkcuNeddgCWy77/LJ6K/NyWX5pYHNyZd2P+H5zcunXhW7F9xdrp9gh+uzE9IWse/ozk/XxcuYSYtP6uKc9Eo9brvENLpclnLm3lMmeGrMFielp7GOKfZ6DTyGsztXVI8SR4wTW9JLKur8wYk07ZU2ZVC3OybvSKFyYGmE/5G9gt8U0TPZG3aOF99xlxSkjglWwJndustflJN+n9kAu371cvzs/6aqc+bzdNKveRAO3XV2jIt+PS/K3RZbk+tdulnK77E4fLYKm3/3S63+7vHDc2U38yyx5q2k24OhSa9jPZf3qYbOQkiKr62mpea8u5ooaHkqKOQ9c8iQWaH1zh30HS74sBJeq18jf/RKzUzV2+vZG/pI1u5m42jSS9D0S1mVN4+a5I84pwL9VJNVGrbRozSB+5EXyVPYW1MdlWztBlN0RcIL0d3fopydtCusW7HVtb5Iqt8uyXWlX7MlUTmmM303AZU1HQI8cZx8jUELqljgW+ZdO2CmkfSvB9XEmvqixKXZNlHKO8CuRnFN8MJZ9OkXKE7s0zyb/khzOx2XZxXGWe+TICfVbCa55bTXaddmwBaY15PncXiOnUkuLqeSivSJPl2UXjkzcugBp30qQBqL5OWi34gHYzZDIxiLJ3EPrRmI10fl1GAV+sJ4JTp9Luk+LprWgF1lgl8DeIDkdnc36lmhK3JnJScAgAJc1bZf1DrL36F+g1hrP+KLI2HiDgdW+wici1r52Kz0VsQ5w4iO3vPlTegr0dVmTj429kbKn0WZ9v9Q2CS/adtmQBWY4k7rThl+yW7J9XJZR28gvyo0r7kd8jp+DdisegN2M1uTDWuJT3eu7tlfwartiXxu57DuSCewOvNo4WfcMqzEbgD64bPD4rU5SAQDg6YOPvm+MvLb7t6FRqkVYp9jx9BrrFMvYpnpMx/bUl6IHFdbJVZoLor61WVo+E4n6j3IGe42ddtngebU6SQUAgKcU6YOT1kuYAhuQAVqEfbz0lD2xKH+31pibCexm+BeG7dl/+eu7nPdQSLA32WmXDf7eQSepAAAAAABgrwGXBQAAAAAAg8pOu2xwP4FOUgEAAAAAwF5jp13WbDZ+q5NUAAAAAACwp+iDywIAAAAAANAV4LIAAAAAAGBQgcsCAAAAAIBBBS4LAAAAAAAGFbgsAAAAAAAYVOCyAAAAAABgUIHLAgAAAACAQQUuCwAAAAAABhW4LAAAAAAAGFTgsgAAAAAAYFDZ9zuX/xkBAQEBAQEBAQFhEANcFgEBAQEBAQEBYVADXBYBAQEBAQEBAWFQA1wWAQEBAQEBAQFhUMO+Tz/9DQICAgICAgICAsIghv8PZW3JQoIT9KYAAAAASUVORK5CYII="},252:(A,e,n)=>{n.d(e,{A:()=>i});const i=n.p+"assets/images/platform-frontpage-7b857da575a3432831a1aec09d6d1683.png"},8453:(A,e,n)=>{n.d(e,{R:()=>o,x:()=>t});var i=n(6540);const s={},r=i.createContext(s);function o(A){const e=i.useContext(r);return i.useMemo((function(){return"function"==typeof A?A(e):{...e,...A}}),[e,A])}function t(A){let e;return e=A.disableParentContext?"function"==typeof A.components?A.components(s):A.components||s:o(A.components),i.createElement(r.Provider,{value:e},A.children)}}}]); \ No newline at end of file diff --git a/assets/js/cd2a62e8.561fe4e4.js b/assets/js/cd2a62e8.561fe4e4.js deleted file mode 100644 index 84d1a828..00000000 --- a/assets/js/cd2a62e8.561fe4e4.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunklobaro_docs=self.webpackChunklobaro_docs||[]).push([[590],{7992:(t,n,e)=>{e.r(n),e.d(n,{assets:()=>l,contentTitle:()=>s,default:()=>p,frontMatter:()=>r,metadata:()=>a,toc:()=>c});var i=e(4848),o=e(8453);const r={sidebar_position:0},s="Integrations",a={id:"platform/integrations/index",title:"Integrations",description:"This page is not ready yet",source:"@site/docs/platform/integrations/index.md",sourceDirName:"platform/integrations",slug:"/platform/integrations/",permalink:"/iot/platform/integrations/",draft:!1,unlisted:!1,editUrl:"https://github.com/lobaro/iot/tree/master/docs/platform/integrations/index.md",tags:[],version:"current",sidebarPosition:0,frontMatter:{sidebar_position:0},sidebar:"allDocSidebar",previous:{title:"Overview",permalink:"/iot/platform/"},next:{title:"Administration",permalink:"/iot/platform/administration/"}},l={},c=[];function d(t){const n={admonition:"admonition",h1:"h1",li:"li",p:"p",strong:"strong",ul:"ul",...(0,o.R)(),...t.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h1,{id:"integrations",children:"Integrations"}),"\n",(0,i.jsx)(n.admonition,{title:"Work in progress",type:"warning",children:(0,i.jsx)(n.p,{children:"This page is not ready yet"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"TODO:"})}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"LoRaWAN Server Integration (Chripstack)"}),"\n"]})]})}function p(t={}){const{wrapper:n}={...(0,o.R)(),...t.components};return n?(0,i.jsx)(n,{...t,children:(0,i.jsx)(d,{...t})}):d(t)}},8453:(t,n,e)=>{e.d(n,{R:()=>s,x:()=>a});var i=e(6540);const o={},r=i.createContext(o);function s(t){const n=i.useContext(r);return i.useMemo((function(){return"function"==typeof t?t(n):{...n,...t}}),[n,t])}function a(t){let n;return n=t.disableParentContext?"function"==typeof t.components?t.components(o):t.components||o:s(t.components),i.createElement(r.Provider,{value:n},t.children)}}}]); \ No newline at end of file diff --git a/assets/js/cd2a62e8.daefb80c.js b/assets/js/cd2a62e8.daefb80c.js new file mode 100644 index 00000000..f891f2fc --- /dev/null +++ b/assets/js/cd2a62e8.daefb80c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunklobaro_docs=self.webpackChunklobaro_docs||[]).push([[590],{7992:(t,n,e)=>{e.r(n),e.d(n,{assets:()=>l,contentTitle:()=>s,default:()=>p,frontMatter:()=>r,metadata:()=>a,toc:()=>c});var i=e(4848),o=e(8453);const r={title:"Integrations (TODO)",sidebar_position:0,draft:!1},s="Integrations",a={id:"platform/integrations/index",title:"Integrations (TODO)",description:"This page is not ready yet",source:"@site/docs/platform/integrations/index.md",sourceDirName:"platform/integrations",slug:"/platform/integrations/",permalink:"/iot/platform/integrations/",draft:!1,unlisted:!1,editUrl:"https://github.com/lobaro/iot/tree/master/docs/platform/integrations/index.md",tags:[],version:"current",sidebarPosition:0,frontMatter:{title:"Integrations (TODO)",sidebar_position:0,draft:!1},sidebar:"allDocSidebar",previous:{title:"Overview",permalink:"/iot/platform/"},next:{title:"Administration",permalink:"/iot/platform/administration/"}},l={},c=[];function d(t){const n={admonition:"admonition",h1:"h1",li:"li",p:"p",strong:"strong",ul:"ul",...(0,o.R)(),...t.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h1,{id:"integrations",children:"Integrations"}),"\n",(0,i.jsx)(n.admonition,{title:"Work in progress",type:"warning",children:(0,i.jsx)(n.p,{children:"This page is not ready yet"})}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.strong,{children:"TODO:"})}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"LoRaWAN Server Integration (Chripstack)"}),"\n"]})]})}function p(t={}){const{wrapper:n}={...(0,o.R)(),...t.components};return n?(0,i.jsx)(n,{...t,children:(0,i.jsx)(d,{...t})}):d(t)}},8453:(t,n,e)=>{e.d(n,{R:()=>s,x:()=>a});var i=e(6540);const o={},r=i.createContext(o);function s(t){const n=i.useContext(r);return i.useMemo((function(){return"function"==typeof t?t(n):{...n,...t}}),[n,t])}function a(t){let n;return n=t.disableParentContext?"function"==typeof t.components?t.components(o):t.components||o:s(t.components),i.createElement(r.Provider,{value:n},t.children)}}}]); \ No newline at end of file diff --git a/assets/js/main.0a5b9185.js b/assets/js/main.0a5b9185.js deleted file mode 100644 index 55b2468a..00000000 --- a/assets/js/main.0a5b9185.js +++ /dev/null @@ -1,2 +0,0 @@ -/*! For license information please see main.0a5b9185.js.LICENSE.txt */ -(self.webpackChunklobaro_docs=self.webpackChunklobaro_docs||[]).push([[8792],{2413:(e,t,n)=>{"use strict";n.d(t,{A:()=>p});n(6540);var r=n(3259),a=n.n(r),o=n(4054);const i={"010bb5b4":[()=>n.e(1417).then(n.bind(n,1810)),"@site/docs/products/sensor-gateways/wireless-mbus-g3/hardware-variants/gw-v4/index.md",1810],"01a49a4f":[()=>n.e(185).then(n.bind(n,8794)),"@site/docs/configuration/lte-network-configuration.md",8794],"02fe52da":[()=>n.e(6322).then(n.bind(n,1556)),"@site/docs/platform/administration/datasources.md",1556],"049cbdee":[()=>n.e(9675).then(n.bind(n,4942)),"@site/docs/components/firmware/app-nrf9160-wmbus/cellular-iot-communication-protocol.md",4942],"069518d7":[()=>n.e(9075).then(n.bind(n,9643)),"@site/docs/products/metering-gateways/wireless-mbus-gateway-dinrail-concentrator.md",9643],"09feb8de":[()=>n.e(2114).then(n.bind(n,4855)),"@site/docs/components/firmware/index.md",4855],"0b02251e":[()=>n.e(3830).then(n.t.bind(n,5570,19)),"@generated/docusaurus-plugin-content-docs/default/p/iot-6a9.json",5570],"0dbe350f":[()=>n.e(8726).then(n.bind(n,5320)),"@site/docs/products/sensor-gateways/wireless-mbus-g2/manual/cfg.md",5320],"1034e1fe":[()=>n.e(136).then(n.bind(n,8882)),"@site/docs/configuration/cron-configuration.md",8882],"111ed76b":[()=>n.e(8428).then(n.bind(n,6486)),"@site/docs/products/sensor-gateways/wireless-mbus-g3/hardware-variants/discontinued/gw-v2/index.md",6486],"1150a092":[()=>n.e(7364).then(n.bind(n,300)),"@site/docs/products/sensor-gateways/wireless-mbus-g3/index.md",300],"142d61b0":[()=>n.e(5907).then(n.bind(n,4369)),"@site/docs/platform/administration/server-configuration.md",4369],17896441:[()=>Promise.all([n.e(1869),n.e(4555),n.e(8401)]).then(n.bind(n,7138)),"@theme/DocItem",7138],"17f2f278":[()=>n.e(5706).then(n.bind(n,789)),"@site/docs/components/enclosures/spelsberg_TG_PC_1208-6-o.md",789],"193f150b":[()=>n.e(6050).then(n.bind(n,2637)),"@site/docs/components/firmware/app-hybrid-modbus/index.md",2637],"1c619603":[()=>n.e(2582).then(n.bind(n,8847)),"@site/docs/products/sensor-gateways/current-loop/index.md",8847],"1d8bdfb7":[()=>n.e(7225).then(n.bind(n,4426)),"@site/docs/platform/faq.md",4426],"1e6d8483":[()=>n.e(5492).then(n.bind(n,2667)),"@site/docs/products/sensor-gateways/wireless-mbus-g3/hardware-variants/concentrator-v1/index.md",2667],"1f391b9e":[()=>Promise.all([n.e(1869),n.e(4555),n.e(6061)]).then(n.bind(n,7591)),"@theme/MDXPage",7591],"21e5f94e":[()=>n.e(7820).then(n.bind(n,1325)),"@site/docs/products/sensor-gateways/level/index.md",1325],"2283cc06":[()=>n.e(968).then(n.bind(n,1309)),"@site/docs/products/sensor-gateways/wireless-mbus-g3/manual/cfg.md",1309],"27118f4d":[()=>n.e(5946).then(n.bind(n,9519)),"@site/docs/knowledge-base/wireless-mbus.md",9519],"28ac7599":[()=>n.e(2647).then(n.bind(n,5303)),"@site/docs/products/sensor-gateways/wireless-mbus-g3/manual/index.md",5303],"2c53b313":[()=>n.e(4867).then(n.bind(n,8133)),"@site/docs/platform/administration/index.md",8133],"3249a05e":[()=>n.e(5588).then(n.bind(n,4138)),"@site/docs/configuration/meter-reception-filter-config.md",4138],"32ed6d30":[()=>n.e(9808).then(n.bind(n,6302)),"@site/docs/products/sensor-gateways/wireless-mbus-g2/manual/index.md",6302],"38df9547":[()=>n.e(8621).then(n.bind(n,9723)),"@site/docs/products/sensor-gateways/wireless-mbus-g2/index.md",9723],"393be207":[()=>n.e(4134).then(n.bind(n,633)),"@site/src/pages/markdown-page.md",633],"413f02fd":[()=>n.e(3521).then(n.bind(n,5266)),"@site/docs/platform/devices/index.md",5266],"41ec1c6d":[()=>n.e(6448).then(n.bind(n,5381)),"@site/docs/components/firmware/app-nrf9160-wmbus/changelog.md",5381],"4ddd2498":[()=>n.e(1110).then(n.bind(n,587)),"@site/docs/configuration/lorawan-downlink-config.md",587],"54120d1c":[()=>n.e(2389).then(n.bind(n,8388)),"@site/docs/products/sensor-gateways/wireless-mbus-g3/hardware-variants/dinrail-v1/index.md",8388],"5734ba63":[()=>n.e(2060).then(n.bind(n,6051)),"@site/docs/components/enclosures/index.md",6051],"5a4e9d38":[()=>n.e(7154).then(n.bind(n,7035)),"@site/docs/products/sensor-gateways/modbus/index.md",7035],"5a6a9bbb":[()=>n.e(835).then(n.bind(n,4125)),"@site/docs/products/sensor-gateways/wireless-mbus-g2/manual/workflow.md",4125],"5e95c892":[()=>n.e(9647).then(n.bind(n,3124)),"@theme/DocsRoot",3124],"632479e1":[()=>n.e(3010).then(n.bind(n,9134)),"@site/docs/products/sensor-gateways/wired-mbus-g1/manual/index.md",9134],"63eca40f":[()=>n.e(9111).then(n.bind(n,9844)),"@site/docs/knowledge-base/index.md",9844],"653e6c43":[()=>n.e(8774).then(n.bind(n,6472)),"@site/docs/products/sensor-gateways/wired-mbus-g1/manual/cfg.md",6472],"65f81c15":[()=>n.e(1552).then(n.bind(n,7709)),"@site/docs/components/firmware/app-nrf9160-wmbus/lorawan-communication-protocol.md",7709],"6bb8bb71":[()=>n.e(437).then(n.bind(n,7155)),"@site/docs/products/sensor-gateways/wireless-mbus-g3/hardware-variants/discontinued/bridge-v2/index.md",7155],"7123406b":[()=>n.e(3682).then(n.bind(n,2013)),"@site/docs/products/metering-gateways/wireless-mbus-gateway-sun-v1.md",2013],"754583dd":[()=>n.e(5633).then(n.bind(n,7173)),"@site/docs/products/index.md",7173],"7adc43c9":[()=>n.e(1259).then(n.bind(n,9799)),"@site/docs/platform/administration/server-certificates.md",9799],"81ca1360":[()=>n.e(5948).then(n.bind(n,687)),"@site/docs/products/sensor-gateways/wireless-mbus-g3/hardware-variants/sun-v1/index.md",687],"82416a47":[()=>n.e(8320).then(n.bind(n,3966)),"@site/docs/products/sensor-gateways/wireless-mbus-g3/manual/workflow.md",3966],"8ddd3da0":[()=>n.e(9253).then(n.bind(n,3939)),"@site/docs/components/modifications/index.md",3939],"93880fc8":[()=>n.e(1944).then(n.bind(n,7731)),"@site/docs/components/firmware/app-nrf9160-wmbus/introduction.md",7731],"9c21640e":[()=>n.e(6679).then(n.bind(n,6294)),"@site/docs/products/sensor-gateways/wireless-mbus-g2/hardware-variants/bridge-v2/index.md",6294],a5750849:[()=>n.e(1148).then(n.bind(n,2640)),"@site/docs/configuration/lobaro-config-tool.md",2640],a5b914f3:[()=>n.e(7244).then(n.bind(n,2608)),"@site/docs/configuration/usb-config-adapter.md",2608],a5f952c8:[()=>n.e(802).then(n.bind(n,4100)),"@site/docs/products/sensor-gateways/wireless-mbus-g3/hardware-variants/discontinued/index.md",4100],a7456010:[()=>n.e(1235).then(n.t.bind(n,8552,19)),"@generated/docusaurus-plugin-content-pages/default/__plugin.json",8552],a76cbaf7:[()=>n.e(5864).then(n.bind(n,9357)),"@site/docs/products/sensor-gateways/wired-mbus-g1/manual/workflow.md",9357],a7bd4aaa:[()=>n.e(7098).then(n.bind(n,2881)),"@theme/DocVersionRoot",2881],a94703ab:[()=>Promise.all([n.e(1869),n.e(9048)]).then(n.bind(n,4644)),"@theme/DocRoot",4644],aba21aa0:[()=>n.e(5742).then(n.t.bind(n,7093,19)),"@generated/docusaurus-plugin-content-docs/default/__plugin.json",7093],acb1f41f:[()=>n.e(731).then(n.bind(n,3233)),"@site/docs/products/sensor-gateways/temperature/index.md",3233],b7192c96:[()=>n.e(7816).then(n.bind(n,286)),"@site/docs/platform/license/index.md",286],ba9c1b43:[()=>n.e(346).then(n.bind(n,4375)),"@site/docs/platform/administration/changelog.md",4375],bb44c6b0:[()=>n.e(2346).then(n.bind(n,1866)),"@site/docs/platform/index.md",1866],bd783ed9:[()=>n.e(8245).then(n.bind(n,3313)),"@site/docs/components/index.md",3313],be259eb1:[()=>n.e(5990).then(n.bind(n,3529)),"@site/docs/products/sensor-gateways/wireless-mbus-g3/hardware-variants/gw-v4/desc.md",3529],c04eaa51:[()=>n.e(2259).then(n.bind(n,2043)),"@site/docs/platform/devices/downlinks.md",2043],c19239ea:[()=>n.e(6244).then(n.bind(n,4718)),"@site/docs/components/batteries/single-saft-lsh20.md",4718],c248f023:[()=>n.e(7315).then(n.bind(n,6185)),"@site/docs/products/sensor-gateways/wired-mbus-g1/hardware-variants/dinrail-v1/index.md",6185],c377a04b:[()=>n.e(3361).then(n.bind(n,1776)),"@site/docs/index.md",1776],c3c3fdd3:[()=>n.e(8622).then(n.bind(n,2587)),"@site/docs/components/firmware/app-nrf9160-wmbus/configuration-parameter.md",2587],cd2a62e8:[()=>n.e(590).then(n.bind(n,7992)),"@site/docs/platform/integrations/index.md",7992],cf2baa63:[()=>n.e(8243).then(n.bind(n,6023)),"@site/docs/platform/administration/monitoring.md",6023],d89bbf77:[()=>n.e(3908).then(n.bind(n,5995)),"@site/docs/products/sensor-gateways/wired-mbus-g1/index.md",5995],d993ba02:[()=>n.e(7795).then(n.bind(n,9983)),"@site/docs/products/sensor-gateways/wireless-mbus-g3/hardware-variants/gw-v3/index.md",9983],dcd0b923:[()=>n.e(474).then(n.bind(n,9446)),"@site/docs/products/metering-gateways/wireless-mbus-gateway-dinrail-230V.md",9446],e091b4aa:[()=>n.e(482).then(n.bind(n,6453)),"@site/docs/knowledge-base/modbus.md",6453],e609a4f4:[()=>n.e(2406).then(n.bind(n,5332)),"@site/docs/components/batteries/19ah-battery-pack.md",5332],e68c242a:[()=>n.e(4888).then(n.bind(n,8195)),"@site/docs/platform/license/direct+/index.md",8195],eb2b5977:[()=>n.e(8822).then(n.bind(n,7439)),"@site/docs/configuration/obis-code-configuration.md",7439],efe13943:[()=>n.e(3891).then(n.bind(n,8007)),"@site/docs/components/batteries/38ah-battery-pack.md",8007],f6d78023:[()=>n.e(4545).then(n.bind(n,5117)),"@site/docs/configuration/index.md",5117],f74ba575:[()=>n.e(7250).then(n.bind(n,8633)),"@site/docs/platform/3rd-party/dragino.md",8633],f88d53d7:[()=>n.e(9582).then(n.bind(n,7912)),"@site/docs/components/addon-modules/index.md",7912],f9990df0:[()=>n.e(3228).then(n.bind(n,1554)),"@site/docs/products/metering-gateways/wireless-mbus-gateway-v3.md",1554],fb6501ba:[()=>n.e(1538).then(n.bind(n,9906)),"@site/docs/products/metering-gateways/wireless-mbus-gateway-dinrail.md",9906]};var s=n(4848);function l(e){let{error:t,retry:n,pastDelay:r}=e;return t?(0,s.jsxs)("div",{style:{textAlign:"center",color:"#fff",backgroundColor:"#fa383e",borderColor:"#fa383e",borderStyle:"solid",borderRadius:"0.25rem",borderWidth:"1px",boxSizing:"border-box",display:"block",padding:"1rem",flex:"0 0 50%",marginLeft:"25%",marginRight:"25%",marginTop:"5rem",maxWidth:"50%",width:"100%"},children:[(0,s.jsx)("p",{children:String(t)}),(0,s.jsx)("div",{children:(0,s.jsx)("button",{type:"button",onClick:n,children:"Retry"})})]}):r?(0,s.jsx)("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",height:"100vh"},children:(0,s.jsx)("svg",{id:"loader",style:{width:128,height:110,position:"absolute",top:"calc(100vh - 64%)"},viewBox:"0 0 45 45",xmlns:"http://www.w3.org/2000/svg",stroke:"#61dafb",children:(0,s.jsxs)("g",{fill:"none",fillRule:"evenodd",transform:"translate(1 1)",strokeWidth:"2",children:[(0,s.jsxs)("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0",children:[(0,s.jsx)("animate",{attributeName:"r",begin:"1.5s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),(0,s.jsx)("animate",{attributeName:"stroke-opacity",begin:"1.5s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),(0,s.jsx)("animate",{attributeName:"stroke-width",begin:"1.5s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})]}),(0,s.jsxs)("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0",children:[(0,s.jsx)("animate",{attributeName:"r",begin:"3s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),(0,s.jsx)("animate",{attributeName:"stroke-opacity",begin:"3s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),(0,s.jsx)("animate",{attributeName:"stroke-width",begin:"3s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})]}),(0,s.jsx)("circle",{cx:"22",cy:"22",r:"8",children:(0,s.jsx)("animate",{attributeName:"r",begin:"0s",dur:"1.5s",values:"6;1;2;3;4;5;6",calcMode:"linear",repeatCount:"indefinite"})})]})})}):null}var c=n(1604),u=n(3363);function d(e,t){if("*"===e)return a()({loading:l,loader:()=>n.e(2560).then(n.bind(n,2560)),modules:["@theme/NotFound"],webpack:()=>[2560],render(e,t){const n=e.default;return(0,s.jsx)(u.W,{value:{plugin:{name:"native",id:"default"}},children:(0,s.jsx)(n,{...t})})}});const r=o[`${e}-${t}`],d={},p=[],f=[],m=(0,c.A)(r);return Object.entries(m).forEach((e=>{let[t,n]=e;const r=i[n];r&&(d[t]=r[0],p.push(r[1]),f.push(r[2]))})),a().Map({loading:l,loader:d,modules:p,webpack:()=>f,render(t,n){const a=JSON.parse(JSON.stringify(r));Object.entries(t).forEach((t=>{let[n,r]=t;const o=r.default;if(!o)throw new Error(`The page component at ${e} doesn't have a default export. This makes it impossible to render anything. Consider default-exporting a React component.`);"object"!=typeof o&&"function"!=typeof o||Object.keys(r).filter((e=>"default"!==e)).forEach((e=>{o[e]=r[e]}));let i=a;const s=n.split(".");s.slice(0,-1).forEach((e=>{i=i[e]})),i[s[s.length-1]]=o}));const o=a.__comp;delete a.__comp;const i=a.__context;delete a.__context;const l=a.__props;return delete a.__props,(0,s.jsx)(u.W,{value:i,children:(0,s.jsx)(o,{...a,...l,...n})})}})}const p=[{path:"/iot/markdown-page",component:d("/iot/markdown-page","bbd"),exact:!0},{path:"/iot/",component:d("/iot/","23f"),routes:[{path:"/iot/",component:d("/iot/","94f"),routes:[{path:"/iot/",component:d("/iot/","248"),routes:[{path:"/iot/components/",component:d("/iot/components/","981"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/components/addon-modules/",component:d("/iot/components/addon-modules/","08b"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/components/batteries/19ah-battery-pack",component:d("/iot/components/batteries/19ah-battery-pack","e19"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/components/batteries/38ah-battery-pack",component:d("/iot/components/batteries/38ah-battery-pack","bc3"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/components/batteries/single-saft-lsh20",component:d("/iot/components/batteries/single-saft-lsh20","354"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/components/enclosures/",component:d("/iot/components/enclosures/","1ed"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/components/enclosures/spelsberg_TG_PC_1208-6-o",component:d("/iot/components/enclosures/spelsberg_TG_PC_1208-6-o","2dd"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/components/firmware/",component:d("/iot/components/firmware/","4d2"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/components/firmware/app-hybrid-modbus/",component:d("/iot/components/firmware/app-hybrid-modbus/","2cc"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/components/firmware/app-nrf9160-wmbus/cellular-iot-communication-protocol",component:d("/iot/components/firmware/app-nrf9160-wmbus/cellular-iot-communication-protocol","27d"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/components/firmware/app-nrf9160-wmbus/changelog",component:d("/iot/components/firmware/app-nrf9160-wmbus/changelog","00b"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/components/firmware/app-nrf9160-wmbus/configuration-parameter",component:d("/iot/components/firmware/app-nrf9160-wmbus/configuration-parameter","675"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/components/firmware/app-nrf9160-wmbus/introduction",component:d("/iot/components/firmware/app-nrf9160-wmbus/introduction","0b2"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/components/firmware/app-nrf9160-wmbus/lorawan-communication-protocol",component:d("/iot/components/firmware/app-nrf9160-wmbus/lorawan-communication-protocol","793"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/components/modifications/",component:d("/iot/components/modifications/","9c1"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/configuration/",component:d("/iot/configuration/","25a"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/configuration/cron-configuration",component:d("/iot/configuration/cron-configuration","39b"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/configuration/lobaro-config-tool",component:d("/iot/configuration/lobaro-config-tool","440"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/configuration/lorawan-downlink-config",component:d("/iot/configuration/lorawan-downlink-config","b99"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/configuration/lte-network-configuration",component:d("/iot/configuration/lte-network-configuration","8fa"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/configuration/meter-reception-filter-config",component:d("/iot/configuration/meter-reception-filter-config","821"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/configuration/obis-code-configuration",component:d("/iot/configuration/obis-code-configuration","bed"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/configuration/usb-config-adapter",component:d("/iot/configuration/usb-config-adapter","6ae"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/knowledge-base/",component:d("/iot/knowledge-base/","e98"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/knowledge-base/modbus",component:d("/iot/knowledge-base/modbus","d46"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/knowledge-base/wireless-mbus",component:d("/iot/knowledge-base/wireless-mbus","df4"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/platform/",component:d("/iot/platform/","bd6"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/platform/3rd-party/dragino",component:d("/iot/platform/3rd-party/dragino","468"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/platform/administration/",component:d("/iot/platform/administration/","6f6"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/platform/administration/changelog",component:d("/iot/platform/administration/changelog","78c"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/platform/administration/datasources",component:d("/iot/platform/administration/datasources","5f5"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/platform/administration/monitoring",component:d("/iot/platform/administration/monitoring","105"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/platform/administration/server-certificates",component:d("/iot/platform/administration/server-certificates","7b0"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/platform/administration/server-configuration",component:d("/iot/platform/administration/server-configuration","7a9"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/platform/devices/",component:d("/iot/platform/devices/","4d3"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/platform/devices/downlinks",component:d("/iot/platform/devices/downlinks","fb0"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/platform/faq",component:d("/iot/platform/faq","11b"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/platform/integrations/",component:d("/iot/platform/integrations/","4ef"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/platform/license/",component:d("/iot/platform/license/","89e"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/platform/license/direct+/",component:d("/iot/platform/license/direct+/","194"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/",component:d("/iot/products/","679"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/metering-gateways/wireless-mbus-gateway-dinrail",component:d("/iot/products/metering-gateways/wireless-mbus-gateway-dinrail","d15"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/metering-gateways/wireless-mbus-gateway-dinrail-230V",component:d("/iot/products/metering-gateways/wireless-mbus-gateway-dinrail-230V","b01"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/metering-gateways/wireless-mbus-gateway-dinrail-concentrator",component:d("/iot/products/metering-gateways/wireless-mbus-gateway-dinrail-concentrator","1ce"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/metering-gateways/wireless-mbus-gateway-sun-v1",component:d("/iot/products/metering-gateways/wireless-mbus-gateway-sun-v1","7d9"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/metering-gateways/wireless-mbus-gateway-v3",component:d("/iot/products/metering-gateways/wireless-mbus-gateway-v3","ee7"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/sensor-gateways/current-loop/",component:d("/iot/products/sensor-gateways/current-loop/","c37"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/sensor-gateways/level/",component:d("/iot/products/sensor-gateways/level/","3fd"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/sensor-gateways/modbus/",component:d("/iot/products/sensor-gateways/modbus/","083"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/sensor-gateways/temperature/",component:d("/iot/products/sensor-gateways/temperature/","86c"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/sensor-gateways/wired-mbus-g1/",component:d("/iot/products/sensor-gateways/wired-mbus-g1/","2e7"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/sensor-gateways/wired-mbus-g1/hardware-variants/dinrail-v1/",component:d("/iot/products/sensor-gateways/wired-mbus-g1/hardware-variants/dinrail-v1/","dfd"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/sensor-gateways/wired-mbus-g1/manual/",component:d("/iot/products/sensor-gateways/wired-mbus-g1/manual/","a53"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/sensor-gateways/wired-mbus-g1/manual/cfg",component:d("/iot/products/sensor-gateways/wired-mbus-g1/manual/cfg","77d"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/sensor-gateways/wired-mbus-g1/manual/workflow",component:d("/iot/products/sensor-gateways/wired-mbus-g1/manual/workflow","1cb"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/sensor-gateways/wireless-mbus-g2/",component:d("/iot/products/sensor-gateways/wireless-mbus-g2/","4f2"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/sensor-gateways/wireless-mbus-g2/hardware-variants/bridge-v2/",component:d("/iot/products/sensor-gateways/wireless-mbus-g2/hardware-variants/bridge-v2/","b3a"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/sensor-gateways/wireless-mbus-g2/manual/",component:d("/iot/products/sensor-gateways/wireless-mbus-g2/manual/","39b"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/sensor-gateways/wireless-mbus-g2/manual/cfg",component:d("/iot/products/sensor-gateways/wireless-mbus-g2/manual/cfg","ea3"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/sensor-gateways/wireless-mbus-g2/manual/workflow",component:d("/iot/products/sensor-gateways/wireless-mbus-g2/manual/workflow","3bc"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/sensor-gateways/wireless-mbus-g3/",component:d("/iot/products/sensor-gateways/wireless-mbus-g3/","dc6"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/concentrator-v1/",component:d("/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/concentrator-v1/","9ee"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/dinrail-v1/",component:d("/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/dinrail-v1/","a1f"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/discontinued/",component:d("/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/discontinued/","782"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/discontinued/bridge-v2/",component:d("/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/discontinued/bridge-v2/","409"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/discontinued/gw-v2/",component:d("/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/discontinued/gw-v2/","4f0"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/gw-v3/",component:d("/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/gw-v3/","ea4"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/gw-v4/",component:d("/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/gw-v4/","8ab"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/gw-v4/desc",component:d("/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/gw-v4/desc","267"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/sun-v1/",component:d("/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/sun-v1/","a59"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/sensor-gateways/wireless-mbus-g3/manual/",component:d("/iot/products/sensor-gateways/wireless-mbus-g3/manual/","ee4"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/sensor-gateways/wireless-mbus-g3/manual/cfg",component:d("/iot/products/sensor-gateways/wireless-mbus-g3/manual/cfg","c50"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/products/sensor-gateways/wireless-mbus-g3/manual/workflow",component:d("/iot/products/sensor-gateways/wireless-mbus-g3/manual/workflow","80a"),exact:!0,sidebar:"allDocSidebar"},{path:"/iot/",component:d("/iot/","dcd"),exact:!0,sidebar:"allDocSidebar"}]}]}]},{path:"*",component:d("*")}]},8848:(e,t,n)=>{"use strict";n.d(t,{o:()=>o,x:()=>i});var r=n(6540),a=n(4848);const o=r.createContext(!1);function i(e){let{children:t}=e;const[n,i]=(0,r.useState)(!1);return(0,r.useEffect)((()=>{i(!0)}),[]),(0,a.jsx)(o.Provider,{value:n,children:t})}},5022:(e,t,n)=>{"use strict";var r=n(6540),a=n(5338),o=n(545),i=n(4625),s=n(4784),l=n(1712);const c=[n(5300),n(4753),n(5729),n(8252),n(1132)];var u=n(2413),d=n(6347),p=n(2831),f=n(4848);function m(e){let{children:t}=e;return(0,f.jsx)(f.Fragment,{children:t})}var g=n(1141),h=n(7639),b=n(8180),y=n(6957),v=n(9817),w=n(2098),k=n(9503),x=n(1482),S=n(4609),E=n(1210);function _(){const{i18n:{currentLocale:e,defaultLocale:t,localeConfigs:n}}=(0,h.A)(),r=(0,w.o)(),a=n[e].htmlLang,o=e=>e.replace("-","_");return(0,f.jsxs)(g.A,{children:[Object.entries(n).map((e=>{let[t,{htmlLang:n}]=e;return(0,f.jsx)("link",{rel:"alternate",href:r.createUrl({locale:t,fullyQualified:!0}),hrefLang:n},t)})),(0,f.jsx)("link",{rel:"alternate",href:r.createUrl({locale:t,fullyQualified:!0}),hrefLang:"x-default"}),(0,f.jsx)("meta",{property:"og:locale",content:o(a)}),Object.values(n).filter((e=>a!==e.htmlLang)).map((e=>(0,f.jsx)("meta",{property:"og:locale:alternate",content:o(e.htmlLang)},`meta-og-${e.htmlLang}`)))]})}function C(e){let{permalink:t}=e;const{siteConfig:{url:n}}=(0,h.A)(),r=function(){const{siteConfig:{url:e,baseUrl:t,trailingSlash:n}}=(0,h.A)(),{pathname:r}=(0,d.zy)();return e+(0,S.applyTrailingSlash)((0,b.Ay)(r),{trailingSlash:n,baseUrl:t})}(),a=t?`${n}${t}`:r;return(0,f.jsxs)(g.A,{children:[(0,f.jsx)("meta",{property:"og:url",content:a}),(0,f.jsx)("link",{rel:"canonical",href:a})]})}function A(){const{i18n:{currentLocale:e}}=(0,h.A)(),{metadata:t,image:n}=(0,y.p)();return(0,f.jsxs)(f.Fragment,{children:[(0,f.jsxs)(g.A,{children:[(0,f.jsx)("meta",{name:"twitter:card",content:"summary_large_image"}),(0,f.jsx)("body",{className:k.w})]}),n&&(0,f.jsx)(v.be,{image:n}),(0,f.jsx)(C,{}),(0,f.jsx)(_,{}),(0,f.jsx)(E.A,{tag:x.Cy,locale:e}),(0,f.jsx)(g.A,{children:t.map(((e,t)=>(0,f.jsx)("meta",{...e},t)))})]})}const T=new Map;var N=n(8848),L=n(3366),O=n(6494);function P(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r{const r=t.default?.[e]??t[e];return r?.(...n)}));return()=>a.forEach((e=>e?.()))}const D=function(e){let{children:t,location:n,previousLocation:r}=e;return(0,O.A)((()=>{r!==n&&(!function(e){let{location:t,previousLocation:n}=e;if(!n)return;const r=t.pathname===n.pathname,a=t.hash===n.hash,o=t.search===n.search;if(r&&a&&!o)return;const{hash:i}=t;if(i){const e=decodeURIComponent(i.substring(1)),t=document.getElementById(e);t?.scrollIntoView()}else window.scrollTo(0,0)}({location:n,previousLocation:r}),P("onRouteDidUpdate",{previousLocation:r,location:n}))}),[r,n]),t};function j(e){const t=Array.from(new Set([e,decodeURI(e)])).map((e=>(0,p.u)(u.A,e))).flat();return Promise.all(t.map((e=>e.route.component.preload?.())))}class R extends r.Component{previousLocation;routeUpdateCleanupCb;constructor(e){super(e),this.previousLocation=null,this.routeUpdateCleanupCb=l.A.canUseDOM?P("onRouteUpdate",{previousLocation:null,location:this.props.location}):()=>{},this.state={nextRouteHasLoaded:!0}}shouldComponentUpdate(e,t){if(e.location===this.props.location)return t.nextRouteHasLoaded;const n=e.location;return this.previousLocation=this.props.location,this.setState({nextRouteHasLoaded:!1}),this.routeUpdateCleanupCb=P("onRouteUpdate",{previousLocation:this.previousLocation,location:n}),j(n.pathname).then((()=>{this.routeUpdateCleanupCb(),this.setState({nextRouteHasLoaded:!0})})).catch((e=>{console.warn(e),window.location.reload()})),!1}render(){const{children:e,location:t}=this.props;return(0,f.jsx)(D,{previousLocation:this.previousLocation,location:t,children:(0,f.jsx)(d.qh,{location:t,render:()=>e})})}}const I=R,M="__docusaurus-base-url-issue-banner-container",z="__docusaurus-base-url-issue-banner",F="__docusaurus-base-url-issue-banner-suggestion-container";function B(e){return`\ndocument.addEventListener('DOMContentLoaded', function maybeInsertBanner() {\n var shouldInsert = typeof window['docusaurus'] === 'undefined';\n shouldInsert && insertBanner();\n});\n\nfunction insertBanner() {\n var bannerContainer = document.createElement('div');\n bannerContainer.id = '${M}';\n var bannerHtml = ${JSON.stringify(function(e){return`\n
\n

Your Docusaurus site did not load properly.

\n

A very common reason is a wrong site baseUrl configuration.

\n

Current configured baseUrl = ${e} ${"/"===e?" (default value)":""}

\n

We suggest trying baseUrl =

\n
\n`}(e)).replace(/{let{route:t}=e;return!0===t.exact})))return T.set(e.pathname,e.pathname),e;const t=e.pathname.trim().replace(/(?:\/index)?\.html$/,"")||"/";return T.set(e.pathname,t),{...e,pathname:t}}((0,d.zy)());return(0,f.jsx)(I,{location:e,children:q})}function K(){return(0,f.jsx)(V.A,{children:(0,f.jsx)(L.l,{children:(0,f.jsxs)(N.x,{children:[(0,f.jsxs)(m,{children:[(0,f.jsx)(H,{}),(0,f.jsx)(A,{}),(0,f.jsx)(U,{}),(0,f.jsx)(Y,{})]}),(0,f.jsx)(G,{})]})})})}var Q=n(4054);const Z=function(e){try{return document.createElement("link").relList.supports(e)}catch{return!1}}("prefetch")?function(e){return new Promise(((t,n)=>{if("undefined"==typeof document)return void n();const r=document.createElement("link");r.setAttribute("rel","prefetch"),r.setAttribute("href",e),r.onload=()=>t(),r.onerror=()=>n();const a=document.getElementsByTagName("head")[0]??document.getElementsByName("script")[0]?.parentNode;a?.appendChild(r)}))}:function(e){return new Promise(((t,n)=>{const r=new XMLHttpRequest;r.open("GET",e,!0),r.withCredentials=!0,r.onload=()=>{200===r.status?t():n()},r.send(null)}))};var X=n(1604);const J=new Set,ee=new Set,te=()=>navigator.connection?.effectiveType.includes("2g")||navigator.connection?.saveData,ne={prefetch:e=>{if(!(e=>!te()&&!ee.has(e)&&!J.has(e))(e))return!1;J.add(e);const t=(0,p.u)(u.A,e).flatMap((e=>{return t=e.route.path,Object.entries(Q).filter((e=>{let[n]=e;return n.replace(/-[^-]+$/,"")===t})).flatMap((e=>{let[,t]=e;return Object.values((0,X.A)(t))}));var t}));return Promise.all(t.map((e=>{const t=n.gca(e);return t&&!t.includes("undefined")?Z(t).catch((()=>{})):Promise.resolve()})))},preload:e=>!!(e=>!te()&&!ee.has(e))(e)&&(ee.add(e),j(e))},re=Object.freeze(ne);function ae(e){let{children:t}=e;return"hash"===s.A.future.experimental_router?(0,f.jsx)(i.I9,{children:t}):(0,f.jsx)(i.Kd,{children:t})}const oe=Boolean(!0);if(l.A.canUseDOM){window.docusaurus=re;const e=document.getElementById("__docusaurus"),t=(0,f.jsx)(o.vd,{children:(0,f.jsx)(ae,{children:(0,f.jsx)(K,{})})}),n=(e,t)=>{console.error("Docusaurus React Root onRecoverableError:",e,t)},i=()=>{if(window.docusaurusRoot)window.docusaurusRoot.render(t);else if(oe)window.docusaurusRoot=a.hydrateRoot(e,t,{onRecoverableError:n});else{const r=a.createRoot(e,{onRecoverableError:n});r.render(t),window.docusaurusRoot=r}};j(window.location.pathname).then((()=>{(0,r.startTransition)(i)}))}},3366:(e,t,n)=>{"use strict";n.d(t,{o:()=>d,l:()=>p});var r=n(6540),a=n(4784);const o=JSON.parse('{"docusaurus-plugin-content-docs":{"default":{"path":"/iot/","versions":[{"name":"current","label":"Next","isLast":true,"path":"/iot/","mainDocId":"index","docs":[{"id":"components/addon-modules/index","path":"/iot/components/addon-modules/","sidebar":"allDocSidebar"},{"id":"components/batteries/19ah-battery-pack","path":"/iot/components/batteries/19ah-battery-pack","sidebar":"allDocSidebar"},{"id":"components/batteries/38ah-battery-pack","path":"/iot/components/batteries/38ah-battery-pack","sidebar":"allDocSidebar"},{"id":"components/batteries/single-saft-lsh20","path":"/iot/components/batteries/single-saft-lsh20","sidebar":"allDocSidebar"},{"id":"components/enclosures/index","path":"/iot/components/enclosures/","sidebar":"allDocSidebar"},{"id":"components/enclosures/spelsberg_TG_PC_1208-6-o","path":"/iot/components/enclosures/spelsberg_TG_PC_1208-6-o","sidebar":"allDocSidebar"},{"id":"components/firmware/app-hybrid-modbus/index","path":"/iot/components/firmware/app-hybrid-modbus/","sidebar":"allDocSidebar"},{"id":"components/firmware/app-nrf9160-wmbus/cellular-iot-communication-protocol","path":"/iot/components/firmware/app-nrf9160-wmbus/cellular-iot-communication-protocol","sidebar":"allDocSidebar"},{"id":"components/firmware/app-nrf9160-wmbus/changelog","path":"/iot/components/firmware/app-nrf9160-wmbus/changelog","sidebar":"allDocSidebar"},{"id":"components/firmware/app-nrf9160-wmbus/configuration-parameter","path":"/iot/components/firmware/app-nrf9160-wmbus/configuration-parameter","sidebar":"allDocSidebar"},{"id":"components/firmware/app-nrf9160-wmbus/introduction","path":"/iot/components/firmware/app-nrf9160-wmbus/introduction","sidebar":"allDocSidebar"},{"id":"components/firmware/app-nrf9160-wmbus/lorawan-communication-protocol","path":"/iot/components/firmware/app-nrf9160-wmbus/lorawan-communication-protocol","sidebar":"allDocSidebar"},{"id":"components/firmware/index","path":"/iot/components/firmware/","sidebar":"allDocSidebar"},{"id":"components/index","path":"/iot/components/","sidebar":"allDocSidebar"},{"id":"components/modifications/index","path":"/iot/components/modifications/","sidebar":"allDocSidebar"},{"id":"configuration/cron-configuration","path":"/iot/configuration/cron-configuration","sidebar":"allDocSidebar"},{"id":"configuration/index","path":"/iot/configuration/","sidebar":"allDocSidebar"},{"id":"configuration/lobaro-config-tool","path":"/iot/configuration/lobaro-config-tool","sidebar":"allDocSidebar"},{"id":"configuration/lorawan-downlink-config","path":"/iot/configuration/lorawan-downlink-config","sidebar":"allDocSidebar"},{"id":"configuration/lte-network-configuration","path":"/iot/configuration/lte-network-configuration","sidebar":"allDocSidebar"},{"id":"configuration/meter-reception-filter-config","path":"/iot/configuration/meter-reception-filter-config","sidebar":"allDocSidebar"},{"id":"configuration/obis-code-configuration","path":"/iot/configuration/obis-code-configuration","sidebar":"allDocSidebar"},{"id":"configuration/usb-config-adapter","path":"/iot/configuration/usb-config-adapter","sidebar":"allDocSidebar"},{"id":"index","path":"/iot/","sidebar":"allDocSidebar"},{"id":"knowledge-base/index","path":"/iot/knowledge-base/","sidebar":"allDocSidebar"},{"id":"knowledge-base/modbus","path":"/iot/knowledge-base/modbus","sidebar":"allDocSidebar"},{"id":"knowledge-base/wireless-mbus","path":"/iot/knowledge-base/wireless-mbus","sidebar":"allDocSidebar"},{"id":"platform/3rd-party/dragino","path":"/iot/platform/3rd-party/dragino","sidebar":"allDocSidebar"},{"id":"platform/administration/changelog","path":"/iot/platform/administration/changelog","sidebar":"allDocSidebar"},{"id":"platform/administration/datasources","path":"/iot/platform/administration/datasources","sidebar":"allDocSidebar"},{"id":"platform/administration/index","path":"/iot/platform/administration/","sidebar":"allDocSidebar"},{"id":"platform/administration/monitoring","path":"/iot/platform/administration/monitoring","sidebar":"allDocSidebar"},{"id":"platform/administration/server-certificates","path":"/iot/platform/administration/server-certificates","sidebar":"allDocSidebar"},{"id":"platform/administration/server-configuration","path":"/iot/platform/administration/server-configuration","sidebar":"allDocSidebar"},{"id":"platform/devices/downlinks","path":"/iot/platform/devices/downlinks","sidebar":"allDocSidebar"},{"id":"platform/devices/index","path":"/iot/platform/devices/","sidebar":"allDocSidebar"},{"id":"platform/faq","path":"/iot/platform/faq","sidebar":"allDocSidebar"},{"id":"platform/index","path":"/iot/platform/","sidebar":"allDocSidebar"},{"id":"platform/integrations/index","path":"/iot/platform/integrations/","sidebar":"allDocSidebar"},{"id":"platform/license/direct+/index","path":"/iot/platform/license/direct+/","sidebar":"allDocSidebar"},{"id":"platform/license/index","path":"/iot/platform/license/","sidebar":"allDocSidebar"},{"id":"products/index","path":"/iot/products/","sidebar":"allDocSidebar"},{"id":"products/metering-gateways/wireless-mbus-gateway-dinrail","path":"/iot/products/metering-gateways/wireless-mbus-gateway-dinrail","sidebar":"allDocSidebar"},{"id":"products/metering-gateways/wireless-mbus-gateway-dinrail-230V","path":"/iot/products/metering-gateways/wireless-mbus-gateway-dinrail-230V","sidebar":"allDocSidebar"},{"id":"products/metering-gateways/wireless-mbus-gateway-dinrail-concentrator","path":"/iot/products/metering-gateways/wireless-mbus-gateway-dinrail-concentrator","sidebar":"allDocSidebar"},{"id":"products/metering-gateways/wireless-mbus-gateway-sun-v1","path":"/iot/products/metering-gateways/wireless-mbus-gateway-sun-v1","sidebar":"allDocSidebar"},{"id":"products/metering-gateways/wireless-mbus-gateway-v3","path":"/iot/products/metering-gateways/wireless-mbus-gateway-v3","sidebar":"allDocSidebar"},{"id":"products/sensor-gateways/current-loop/index","path":"/iot/products/sensor-gateways/current-loop/","sidebar":"allDocSidebar"},{"id":"products/sensor-gateways/level/index","path":"/iot/products/sensor-gateways/level/","sidebar":"allDocSidebar"},{"id":"products/sensor-gateways/modbus/index","path":"/iot/products/sensor-gateways/modbus/","sidebar":"allDocSidebar"},{"id":"products/sensor-gateways/temperature/index","path":"/iot/products/sensor-gateways/temperature/","sidebar":"allDocSidebar"},{"id":"products/sensor-gateways/wired-mbus-g1/hardware-variants/dinrail-v1/index","path":"/iot/products/sensor-gateways/wired-mbus-g1/hardware-variants/dinrail-v1/","sidebar":"allDocSidebar"},{"id":"products/sensor-gateways/wired-mbus-g1/index","path":"/iot/products/sensor-gateways/wired-mbus-g1/","sidebar":"allDocSidebar"},{"id":"products/sensor-gateways/wired-mbus-g1/manual/cfg","path":"/iot/products/sensor-gateways/wired-mbus-g1/manual/cfg","sidebar":"allDocSidebar"},{"id":"products/sensor-gateways/wired-mbus-g1/manual/index","path":"/iot/products/sensor-gateways/wired-mbus-g1/manual/","sidebar":"allDocSidebar"},{"id":"products/sensor-gateways/wired-mbus-g1/manual/workflow","path":"/iot/products/sensor-gateways/wired-mbus-g1/manual/workflow","sidebar":"allDocSidebar"},{"id":"products/sensor-gateways/wireless-mbus-g2/hardware-variants/bridge-v2/index","path":"/iot/products/sensor-gateways/wireless-mbus-g2/hardware-variants/bridge-v2/","sidebar":"allDocSidebar"},{"id":"products/sensor-gateways/wireless-mbus-g2/index","path":"/iot/products/sensor-gateways/wireless-mbus-g2/","sidebar":"allDocSidebar"},{"id":"products/sensor-gateways/wireless-mbus-g2/manual/cfg","path":"/iot/products/sensor-gateways/wireless-mbus-g2/manual/cfg","sidebar":"allDocSidebar"},{"id":"products/sensor-gateways/wireless-mbus-g2/manual/index","path":"/iot/products/sensor-gateways/wireless-mbus-g2/manual/","sidebar":"allDocSidebar"},{"id":"products/sensor-gateways/wireless-mbus-g2/manual/workflow","path":"/iot/products/sensor-gateways/wireless-mbus-g2/manual/workflow","sidebar":"allDocSidebar"},{"id":"products/sensor-gateways/wireless-mbus-g3/hardware-variants/concentrator-v1/index","path":"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/concentrator-v1/","sidebar":"allDocSidebar"},{"id":"products/sensor-gateways/wireless-mbus-g3/hardware-variants/dinrail-v1/index","path":"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/dinrail-v1/","sidebar":"allDocSidebar"},{"id":"products/sensor-gateways/wireless-mbus-g3/hardware-variants/discontinued/bridge-v2/index","path":"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/discontinued/bridge-v2/","sidebar":"allDocSidebar"},{"id":"products/sensor-gateways/wireless-mbus-g3/hardware-variants/discontinued/gw-v2/index","path":"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/discontinued/gw-v2/","sidebar":"allDocSidebar"},{"id":"products/sensor-gateways/wireless-mbus-g3/hardware-variants/discontinued/index","path":"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/discontinued/","sidebar":"allDocSidebar"},{"id":"products/sensor-gateways/wireless-mbus-g3/hardware-variants/gw-v3/index","path":"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/gw-v3/","sidebar":"allDocSidebar"},{"id":"products/sensor-gateways/wireless-mbus-g3/hardware-variants/gw-v4/desc","path":"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/gw-v4/desc","sidebar":"allDocSidebar"},{"id":"products/sensor-gateways/wireless-mbus-g3/hardware-variants/gw-v4/index","path":"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/gw-v4/","sidebar":"allDocSidebar"},{"id":"products/sensor-gateways/wireless-mbus-g3/hardware-variants/sun-v1/index","path":"/iot/products/sensor-gateways/wireless-mbus-g3/hardware-variants/sun-v1/","sidebar":"allDocSidebar"},{"id":"products/sensor-gateways/wireless-mbus-g3/index","path":"/iot/products/sensor-gateways/wireless-mbus-g3/","sidebar":"allDocSidebar"},{"id":"products/sensor-gateways/wireless-mbus-g3/manual/cfg","path":"/iot/products/sensor-gateways/wireless-mbus-g3/manual/cfg","sidebar":"allDocSidebar"},{"id":"products/sensor-gateways/wireless-mbus-g3/manual/index","path":"/iot/products/sensor-gateways/wireless-mbus-g3/manual/","sidebar":"allDocSidebar"},{"id":"products/sensor-gateways/wireless-mbus-g3/manual/workflow","path":"/iot/products/sensor-gateways/wireless-mbus-g3/manual/workflow","sidebar":"allDocSidebar"}],"draftIds":["knowledge-base/playground","components/firmware/app-nrf91-hybrid/index","components/firmware/app-nrf91-origin/index"],"sidebars":{"htmlSidebar":{},"allDocSidebar":{"link":{"path":"/iot/","label":"index"}}}}],"breadcrumbs":true}}}'),i=JSON.parse('{"defaultLocale":"en","locales":["en"],"path":"i18n","currentLocale":"en","localeConfigs":{"en":{"label":"English","direction":"ltr","htmlLang":"en","calendar":"gregory","path":"en"}}}');var s=n(2654);const l=JSON.parse('{"docusaurusVersion":"3.4.0","siteVersion":"0.0.0","pluginVersions":{"docusaurus-plugin-content-docs":{"type":"package","name":"@docusaurus/plugin-content-docs","version":"3.4.0"},"docusaurus-plugin-content-pages":{"type":"package","name":"@docusaurus/plugin-content-pages","version":"3.4.0"},"docusaurus-plugin-sitemap":{"type":"package","name":"@docusaurus/plugin-sitemap","version":"3.4.0"},"docusaurus-theme-classic":{"type":"package","name":"@docusaurus/theme-classic","version":"3.4.0"},"docusaurus-plugin-image-zoom":{"type":"package","name":"docusaurus-plugin-image-zoom","version":"2.0.0"},"docusaurus-plugin-ideal-image":{"type":"package","name":"@docusaurus/plugin-ideal-image","version":"3.4.0"}}}');var c=n(4848);const u={siteConfig:a.A,siteMetadata:l,globalData:o,i18n:i,codeTranslations:s},d=r.createContext(u);function p(e){let{children:t}=e;return(0,c.jsx)(d.Provider,{value:u,children:t})}},3832:(e,t,n)=>{"use strict";n.d(t,{A:()=>g});var r=n(6540),a=n(1712),o=n(1141),i=n(4609),s=n(3844),l=n(3363),c=n(4848);function u(e){let{error:t,tryAgain:n}=e;return(0,c.jsxs)("div",{style:{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"flex-start",minHeight:"100vh",width:"100%",maxWidth:"80ch",fontSize:"20px",margin:"0 auto",padding:"1rem"},children:[(0,c.jsx)("h1",{style:{fontSize:"3rem"},children:"This page crashed"}),(0,c.jsx)("button",{type:"button",onClick:n,style:{margin:"1rem 0",fontSize:"2rem",cursor:"pointer",borderRadius:20,padding:"1rem"},children:"Try again"}),(0,c.jsx)(d,{error:t})]})}function d(e){let{error:t}=e;const n=(0,i.getErrorCausalChain)(t).map((e=>e.message)).join("\n\nCause:\n");return(0,c.jsx)("p",{style:{whiteSpace:"pre-wrap"},children:n})}function p(e){let{children:t}=e;return(0,c.jsx)(l.W,{value:{plugin:{name:"docusaurus-core-error-boundary",id:"default"}},children:t})}function f(e){let{error:t,tryAgain:n}=e;return(0,c.jsx)(p,{children:(0,c.jsxs)(g,{fallback:()=>(0,c.jsx)(u,{error:t,tryAgain:n}),children:[(0,c.jsx)(o.A,{children:(0,c.jsx)("title",{children:"Page Error"})}),(0,c.jsx)(s.A,{children:(0,c.jsx)(u,{error:t,tryAgain:n})})]})})}const m=e=>(0,c.jsx)(f,{...e});class g extends r.Component{constructor(e){super(e),this.state={error:null}}componentDidCatch(e){a.A.canUseDOM&&this.setState({error:e})}render(){const{children:e}=this.props,{error:t}=this.state;if(t){const e={error:t,tryAgain:()=>this.setState({error:null})};return(this.props.fallback??m)(e)}return e??null}}},1712:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});const r="undefined"!=typeof window&&"document"in window&&"createElement"in window.document,a={canUseDOM:r,canUseEventListeners:r&&("addEventListener"in window||"attachEvent"in window),canUseIntersectionObserver:r&&"IntersectionObserver"in window,canUseViewport:r&&"screen"in window}},1141:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});n(6540);var r=n(545),a=n(4848);function o(e){return(0,a.jsx)(r.mg,{...e})}},4783:(e,t,n)=>{"use strict";n.d(t,{A:()=>f});var r=n(6540),a=n(4625),o=n(4609),i=n(7639),s=n(877),l=n(1712),c=n(7344),u=n(8180),d=n(4848);function p(e,t){let{isNavLink:n,to:p,href:f,activeClassName:m,isActive:g,"data-noBrokenLinkCheck":h,autoAddBaseUrl:b=!0,...y}=e;const{siteConfig:v}=(0,i.A)(),{trailingSlash:w,baseUrl:k}=v,x=v.future.experimental_router,{withBaseUrl:S}=(0,u.hH)(),E=(0,c.A)(),_=(0,r.useRef)(null);(0,r.useImperativeHandle)(t,(()=>_.current));const C=p||f;const A=(0,s.A)(C),T=C?.replace("pathname://","");let N=void 0!==T?(L=T,b&&(e=>e.startsWith("/"))(L)?S(L):L):void 0;var L;"hash"===x&&N?.startsWith("./")&&(N=N?.slice(1)),N&&A&&(N=(0,o.applyTrailingSlash)(N,{trailingSlash:w,baseUrl:k}));const O=(0,r.useRef)(!1),P=n?a.k2:a.N_,D=l.A.canUseIntersectionObserver,j=(0,r.useRef)(),R=()=>{O.current||null==N||(window.docusaurus.preload(N),O.current=!0)};(0,r.useEffect)((()=>(!D&&A&&null!=N&&window.docusaurus.prefetch(N),()=>{D&&j.current&&j.current.disconnect()})),[j,N,D,A]);const I=N?.startsWith("#")??!1,M=!y.target||"_self"===y.target,z=!N||!A||!M;return h||!I&&z||E.collectLink(N),y.id&&E.collectAnchor(y.id),z?(0,d.jsx)("a",{ref:_,href:N,...C&&!A&&{target:"_blank",rel:"noopener noreferrer"},...y}):(0,d.jsx)(P,{...y,onMouseEnter:R,onTouchStart:R,innerRef:e=>{_.current=e,D&&e&&A&&(j.current=new window.IntersectionObserver((t=>{t.forEach((t=>{e===t.target&&(t.isIntersecting||t.intersectionRatio>0)&&(j.current.unobserve(e),j.current.disconnect(),null!=N&&window.docusaurus.prefetch(N))}))})),j.current.observe(e))},to:N,...n&&{isActive:g,activeClassName:m}})}const f=r.forwardRef(p)},9175:(e,t,n)=>{"use strict";n.d(t,{A:()=>r});const r=()=>null},3230:(e,t,n)=>{"use strict";n.d(t,{A:()=>c,T:()=>l});var r=n(6540),a=n(4848);function o(e,t){const n=e.split(/(\{\w+\})/).map(((e,n)=>{if(n%2==1){const n=t?.[e.slice(1,-1)];if(void 0!==n)return n}return e}));return n.some((e=>(0,r.isValidElement)(e)))?n.map(((e,t)=>(0,r.isValidElement)(e)?r.cloneElement(e,{key:t}):e)).filter((e=>""!==e)):n.join("")}var i=n(2654);function s(e){let{id:t,message:n}=e;if(void 0===t&&void 0===n)throw new Error("Docusaurus translation declarations must have at least a translation id or a default translation message");return i[t??n]??n??t}function l(e,t){let{message:n,id:r}=e;return o(s({message:n,id:r}),t)}function c(e){let{children:t,id:n,values:r}=e;if(t&&"string"!=typeof t)throw console.warn("Illegal children",t),new Error("The Docusaurus component only accept simple string values");const i=s({message:t,id:n});return(0,a.jsx)(a.Fragment,{children:o(i,r)})}},4598:(e,t,n)=>{"use strict";n.d(t,{W:()=>r});const r="default"},877:(e,t,n)=>{"use strict";function r(e){return/^(?:\w*:|\/\/)/.test(e)}function a(e){return void 0!==e&&!r(e)}n.d(t,{A:()=>a,z:()=>r})},8180:(e,t,n)=>{"use strict";n.d(t,{Ay:()=>s,hH:()=>i});var r=n(6540),a=n(7639),o=n(877);function i(){const{siteConfig:e}=(0,a.A)(),{baseUrl:t,url:n}=e,i=e.future.experimental_router,s=(0,r.useCallback)(((e,r)=>function(e){let{siteUrl:t,baseUrl:n,url:r,options:{forcePrependBaseUrl:a=!1,absolute:i=!1}={},router:s}=e;if(!r||r.startsWith("#")||(0,o.z)(r))return r;if("hash"===s)return r.startsWith("/")?`.${r}`:`./${r}`;if(a)return n+r.replace(/^\//,"");if(r===n.replace(/\/$/,""))return n;const l=r.startsWith(n)?r:n+r.replace(/^\//,"");return i?t+l:l}({siteUrl:n,baseUrl:t,url:e,options:r,router:i})),[n,t,i]);return{withBaseUrl:s}}function s(e,t){void 0===t&&(t={});const{withBaseUrl:n}=i();return n(e,t)}},7344:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var r=n(6540);n(4848);const a=r.createContext({collectAnchor:()=>{},collectLink:()=>{}}),o=()=>(0,r.useContext)(a);function i(){return o()}},7639:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(6540),a=n(3366);function o(){return(0,r.useContext)(a.o)}},1062:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(6540),a=n(8848);function o(){return(0,r.useContext)(a.o)}},6494:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});var r=n(6540);const a=n(1712).A.canUseDOM?r.useLayoutEffect:r.useEffect},1604:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});const r=e=>"object"==typeof e&&!!e&&Object.keys(e).length>0;function a(e){const t={};return function e(n,a){Object.entries(n).forEach((n=>{let[o,i]=n;const s=a?`${a}.${o}`:o;r(i)?e(i,s):t[s]=i}))}(e),t}},3363:(e,t,n)=>{"use strict";n.d(t,{W:()=>i,o:()=>o});var r=n(6540),a=n(4848);const o=r.createContext(null);function i(e){let{children:t,value:n}=e;const i=r.useContext(o),s=(0,r.useMemo)((()=>function(e){let{parent:t,value:n}=e;if(!t){if(!n)throw new Error("Unexpected: no Docusaurus route context found");if(!("plugin"in n))throw new Error("Unexpected: Docusaurus topmost route context has no `plugin` attribute");return n}const r={...t.data,...n?.data};return{plugin:t.plugin,data:r}}({parent:i,value:n})),[i,n]);return(0,a.jsx)(o.Provider,{value:s,children:t})}},4721:(e,t,n)=>{"use strict";n.d(t,{zK:()=>g,vT:()=>p,Gy:()=>u,HW:()=>h,ht:()=>d,r7:()=>m,jh:()=>f});var r=n(6347),a=n(7639),o=n(4598);function i(e,t){void 0===t&&(t={});const n=function(){const{globalData:e}=(0,a.A)();return e}()[e];if(!n&&t.failfast)throw new Error(`Docusaurus plugin global data not found for "${e}" plugin.`);return n}const s=e=>e.versions.find((e=>e.isLast));function l(e,t){const n=function(e,t){const n=s(e);return[...e.versions.filter((e=>e!==n)),n].find((e=>!!(0,r.B6)(t,{path:e.path,exact:!1,strict:!1})))}(e,t),a=n?.docs.find((e=>!!(0,r.B6)(t,{path:e.path,exact:!0,strict:!1})));return{activeVersion:n,activeDoc:a,alternateDocVersions:a?function(t){const n={};return e.versions.forEach((e=>{e.docs.forEach((r=>{r.id===t&&(n[e.name]=r)}))})),n}(a.id):{}}}const c={},u=()=>i("docusaurus-plugin-content-docs")??c,d=e=>{try{return function(e,t,n){void 0===t&&(t=o.W),void 0===n&&(n={});const r=i(e),a=r?.[t];if(!a&&n.failfast)throw new Error(`Docusaurus plugin global data not found for "${e}" plugin with id "${t}".`);return a}("docusaurus-plugin-content-docs",e,{failfast:!0})}catch(t){throw new Error("You are using a feature of the Docusaurus docs plugin, but this plugin does not seem to be enabled"+("Default"===e?"":` (pluginId=${e}`),{cause:t})}};function p(e){void 0===e&&(e={});const t=u(),{pathname:n}=(0,r.zy)();return function(e,t,n){void 0===n&&(n={});const a=Object.entries(e).sort(((e,t)=>t[1].path.localeCompare(e[1].path))).find((e=>{let[,n]=e;return!!(0,r.B6)(t,{path:n.path,exact:!1,strict:!1})})),o=a?{pluginId:a[0],pluginData:a[1]}:void 0;if(!o&&n.failfast)throw new Error(`Can't find active docs plugin for "${t}" pathname, while it was expected to be found. Maybe you tried to use a docs feature that can only be used on a docs-related page? Existing docs plugin paths are: ${Object.values(e).map((e=>e.path)).join(", ")}`);return o}(t,n,e)}function f(e){return d(e).versions}function m(e){const t=d(e);return s(t)}function g(e){const t=d(e),{pathname:n}=(0,r.zy)();return l(t,n)}function h(e){const t=d(e),{pathname:n}=(0,r.zy)();return function(e,t){const n=s(e);return{latestDocSuggestion:l(e,t).alternateDocVersions[n.name],latestVersionSuggestion:n}}(t,n)}},5729:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>o});var r=n(5947),a=n.n(r);a().configure({showSpinner:!1});const o={onRouteUpdate(e){let{location:t,previousLocation:n}=e;if(n&&t.pathname!==n.pathname){const e=window.setTimeout((()=>{a().start()}),200);return()=>window.clearTimeout(e)}},onRouteDidUpdate(){a().done()}}},4753:(e,t,n)=>{"use strict";n.r(t);var r=n(1765),a=n(4784);!function(e){const{themeConfig:{prism:t}}=a.A,{additionalLanguages:r}=t;globalThis.Prism=e,r.forEach((e=>{"php"===e&&n(9700),n(3254)(`./prism-${e}`)})),delete globalThis.Prism}(r.My)},5225:(e,t,n)=>{"use strict";n.d(t,{A:()=>u});n(6540);var r=n(4164),a=n(3230),o=n(6957),i=n(4783),s=n(7344);const l={anchorWithStickyNavbar:"anchorWithStickyNavbar_LWe7",anchorWithHideOnScrollNavbar:"anchorWithHideOnScrollNavbar_WYt5"};var c=n(4848);function u(e){let{as:t,id:n,...u}=e;const d=(0,s.A)(),{navbar:{hideOnScroll:p}}=(0,o.p)();if("h1"===t||!n)return(0,c.jsx)(t,{...u,id:void 0});d.collectAnchor(n);const f=(0,a.T)({id:"theme.common.headingLinkTitle",message:"Direct link to {heading}",description:"Title for link to heading"},{heading:"string"==typeof u.children?u.children:n});return(0,c.jsxs)(t,{...u,className:(0,r.A)("anchor",p?l.anchorWithHideOnScrollNavbar:l.anchorWithStickyNavbar,u.className),id:n,children:[u.children,(0,c.jsx)(i.A,{className:"hash-link",to:`#${n}`,"aria-label":f,title:f,children:"\u200b"})]})}},716:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});n(6540);const r={iconExternalLink:"iconExternalLink_nPIU"};var a=n(4848);function o(e){let{width:t=13.5,height:n=13.5}=e;return(0,a.jsx)("svg",{width:t,height:n,"aria-hidden":"true",viewBox:"0 0 24 24",className:r.iconExternalLink,children:(0,a.jsx)("path",{fill:"currentColor",d:"M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"})})}},3844:(e,t,n)=>{"use strict";n.d(t,{A:()=>ft});var r=n(6540),a=n(4164),o=n(3832),i=n(9817),s=n(6347),l=n(3230),c=n(4067),u=n(4848);const d="__docusaurus_skipToContent_fallback";function p(e){e.setAttribute("tabindex","-1"),e.focus(),e.removeAttribute("tabindex")}function f(){const e=(0,r.useRef)(null),{action:t}=(0,s.W6)(),n=(0,r.useCallback)((e=>{e.preventDefault();const t=document.querySelector("main:first-of-type")??document.getElementById(d);t&&p(t)}),[]);return(0,c.$)((n=>{let{location:r}=n;e.current&&!r.hash&&"PUSH"===t&&p(e.current)})),{containerRef:e,onClick:n}}const m=(0,l.T)({id:"theme.common.skipToMainContent",description:"The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation",message:"Skip to main content"});function g(e){const t=e.children??m,{containerRef:n,onClick:r}=f();return(0,u.jsx)("div",{ref:n,role:"region","aria-label":m,children:(0,u.jsx)("a",{...e,href:`#${d}`,onClick:r,children:t})})}var h=n(8630),b=n(9503);const y={skipToContent:"skipToContent_fXgn"};function v(){return(0,u.jsx)(g,{className:y.skipToContent})}var w=n(6957),k=n(2);function x(e){let{width:t=21,height:n=21,color:r="currentColor",strokeWidth:a=1.2,className:o,...i}=e;return(0,u.jsx)("svg",{viewBox:"0 0 15 15",width:t,height:n,...i,children:(0,u.jsx)("g",{stroke:r,strokeWidth:a,children:(0,u.jsx)("path",{d:"M.75.75l13.5 13.5M14.25.75L.75 14.25"})})})}const S={closeButton:"closeButton_CVFx"};function E(e){return(0,u.jsx)("button",{type:"button","aria-label":(0,l.T)({id:"theme.AnnouncementBar.closeButtonAriaLabel",message:"Close",description:"The ARIA label for close button of announcement bar"}),...e,className:(0,a.A)("clean-btn close",S.closeButton,e.className),children:(0,u.jsx)(x,{width:14,height:14,strokeWidth:3.1})})}const _={content:"content_knG7"};function C(e){const{announcementBar:t}=(0,w.p)(),{content:n}=t;return(0,u.jsx)("div",{...e,className:(0,a.A)(_.content,e.className),dangerouslySetInnerHTML:{__html:n}})}const A={announcementBar:"announcementBar_mb4j",announcementBarPlaceholder:"announcementBarPlaceholder_vyr4",announcementBarClose:"announcementBarClose_gvF7",announcementBarContent:"announcementBarContent_xLdY"};function T(){const{announcementBar:e}=(0,w.p)(),{isActive:t,close:n}=(0,k.M)();if(!t)return null;const{backgroundColor:r,textColor:a,isCloseable:o}=e;return(0,u.jsxs)("div",{className:A.announcementBar,style:{backgroundColor:r,color:a},role:"banner",children:[o&&(0,u.jsx)("div",{className:A.announcementBarPlaceholder}),(0,u.jsx)(C,{className:A.announcementBarContent}),o&&(0,u.jsx)(E,{onClick:n,className:A.announcementBarClose})]})}var N=n(1938),L=n(4245);var O=n(4799),P=n(763);const D=r.createContext(null);function j(e){let{children:t}=e;const n=function(){const e=(0,N.M)(),t=(0,P.YL)(),[n,a]=(0,r.useState)(!1),o=null!==t.component,i=(0,O.ZC)(o);return(0,r.useEffect)((()=>{o&&!i&&a(!0)}),[o,i]),(0,r.useEffect)((()=>{o?e.shown||a(!0):a(!1)}),[e.shown,o]),(0,r.useMemo)((()=>[n,a]),[n])}();return(0,u.jsx)(D.Provider,{value:n,children:t})}function R(e){if(e.component){const t=e.component;return(0,u.jsx)(t,{...e.props})}}function I(){const e=(0,r.useContext)(D);if(!e)throw new O.dV("NavbarSecondaryMenuDisplayProvider");const[t,n]=e,a=(0,r.useCallback)((()=>n(!1)),[n]),o=(0,P.YL)();return(0,r.useMemo)((()=>({shown:t,hide:a,content:R(o)})),[a,o,t])}function M(e){let{header:t,primaryMenu:n,secondaryMenu:r}=e;const{shown:o}=I();return(0,u.jsxs)("div",{className:"navbar-sidebar",children:[t,(0,u.jsxs)("div",{className:(0,a.A)("navbar-sidebar__items",{"navbar-sidebar__items--show-secondary":o}),children:[(0,u.jsx)("div",{className:"navbar-sidebar__item menu",children:n}),(0,u.jsx)("div",{className:"navbar-sidebar__item menu",children:r})]})]})}var z=n(7710),F=n(1062);function B(e){return(0,u.jsx)("svg",{viewBox:"0 0 24 24",width:24,height:24,...e,children:(0,u.jsx)("path",{fill:"currentColor",d:"M12,9c1.65,0,3,1.35,3,3s-1.35,3-3,3s-3-1.35-3-3S10.35,9,12,9 M12,7c-2.76,0-5,2.24-5,5s2.24,5,5,5s5-2.24,5-5 S14.76,7,12,7L12,7z M2,13l2,0c0.55,0,1-0.45,1-1s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S1.45,13,2,13z M20,13l2,0c0.55,0,1-0.45,1-1 s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S19.45,13,20,13z M11,2v2c0,0.55,0.45,1,1,1s1-0.45,1-1V2c0-0.55-0.45-1-1-1S11,1.45,11,2z M11,20v2c0,0.55,0.45,1,1,1s1-0.45,1-1v-2c0-0.55-0.45-1-1-1C11.45,19,11,19.45,11,20z M5.99,4.58c-0.39-0.39-1.03-0.39-1.41,0 c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0s0.39-1.03,0-1.41L5.99,4.58z M18.36,16.95 c-0.39-0.39-1.03-0.39-1.41,0c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0c0.39-0.39,0.39-1.03,0-1.41 L18.36,16.95z M19.42,5.99c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06c-0.39,0.39-0.39,1.03,0,1.41 s1.03,0.39,1.41,0L19.42,5.99z M7.05,18.36c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06 c-0.39,0.39-0.39,1.03,0,1.41s1.03,0.39,1.41,0L7.05,18.36z"})})}function $(e){return(0,u.jsx)("svg",{viewBox:"0 0 24 24",width:24,height:24,...e,children:(0,u.jsx)("path",{fill:"currentColor",d:"M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27C17.45,17.19,14.93,19,12,19 c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36 c-0.98,1.37-2.58,2.26-4.4,2.26c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"})})}const U={toggle:"toggle_vylO",toggleButton:"toggleButton_gllP",darkToggleIcon:"darkToggleIcon_wfgR",lightToggleIcon:"lightToggleIcon_pyhR",toggleButtonDisabled:"toggleButtonDisabled_aARS"};function H(e){let{className:t,buttonClassName:n,value:r,onChange:o}=e;const i=(0,F.A)(),s=(0,l.T)({message:"Switch between dark and light mode (currently {mode})",id:"theme.colorToggle.ariaLabel",description:"The ARIA label for the navbar color mode toggle"},{mode:"dark"===r?(0,l.T)({message:"dark mode",id:"theme.colorToggle.ariaLabel.mode.dark",description:"The name for the dark color mode"}):(0,l.T)({message:"light mode",id:"theme.colorToggle.ariaLabel.mode.light",description:"The name for the light color mode"})});return(0,u.jsx)("div",{className:(0,a.A)(U.toggle,t),children:(0,u.jsxs)("button",{className:(0,a.A)("clean-btn",U.toggleButton,!i&&U.toggleButtonDisabled,n),type:"button",onClick:()=>o("dark"===r?"light":"dark"),disabled:!i,title:s,"aria-label":s,"aria-live":"polite",children:[(0,u.jsx)(B,{className:(0,a.A)(U.toggleIcon,U.lightToggleIcon)}),(0,u.jsx)($,{className:(0,a.A)(U.toggleIcon,U.darkToggleIcon)})]})})}const V=r.memo(H),W={darkNavbarColorModeToggle:"darkNavbarColorModeToggle_X3D1"};function G(e){let{className:t}=e;const n=(0,w.p)().navbar.style,r=(0,w.p)().colorMode.disableSwitch,{colorMode:a,setColorMode:o}=(0,z.G)();return r?null:(0,u.jsx)(V,{className:t,buttonClassName:"dark"===n?W.darkNavbarColorModeToggle:void 0,value:a,onChange:o})}var q=n(20);function Y(){return(0,u.jsx)(q.A,{className:"navbar__brand",imageClassName:"navbar__logo",titleClassName:"navbar__title text--truncate"})}function K(){const e=(0,N.M)();return(0,u.jsx)("button",{type:"button","aria-label":(0,l.T)({id:"theme.docs.sidebar.closeSidebarButtonAriaLabel",message:"Close navigation bar",description:"The ARIA label for close button of mobile sidebar"}),className:"clean-btn navbar-sidebar__close",onClick:()=>e.toggle(),children:(0,u.jsx)(x,{color:"var(--ifm-color-emphasis-600)"})})}function Q(){return(0,u.jsxs)("div",{className:"navbar-sidebar__brand",children:[(0,u.jsx)(Y,{}),(0,u.jsx)(G,{className:"margin-right--md"}),(0,u.jsx)(K,{})]})}var Z=n(4783),X=n(8180),J=n(877);function ee(e,t){return void 0!==e&&void 0!==t&&new RegExp(e,"gi").test(t)}var te=n(716);function ne(e){let{activeBasePath:t,activeBaseRegex:n,to:r,href:a,label:o,html:i,isDropdownLink:s,prependBaseUrlToHref:l,...c}=e;const d=(0,X.Ay)(r),p=(0,X.Ay)(t),f=(0,X.Ay)(a,{forcePrependBaseUrl:!0}),m=o&&a&&!(0,J.A)(a),g=i?{dangerouslySetInnerHTML:{__html:i}}:{children:(0,u.jsxs)(u.Fragment,{children:[o,m&&(0,u.jsx)(te.A,{...s&&{width:12,height:12}})]})};return a?(0,u.jsx)(Z.A,{href:l?f:a,...c,...g}):(0,u.jsx)(Z.A,{to:d,isNavLink:!0,...(t||n)&&{isActive:(e,t)=>n?ee(n,t.pathname):t.pathname.startsWith(p)},...c,...g})}function re(e){let{className:t,isDropdownItem:n=!1,...r}=e;const o=(0,u.jsx)(ne,{className:(0,a.A)(n?"dropdown__link":"navbar__item navbar__link",t),isDropdownLink:n,...r});return n?(0,u.jsx)("li",{children:o}):o}function ae(e){let{className:t,isDropdownItem:n,...r}=e;return(0,u.jsx)("li",{className:"menu__list-item",children:(0,u.jsx)(ne,{className:(0,a.A)("menu__link",t),...r})})}function oe(e){let{mobile:t=!1,position:n,...r}=e;const a=t?ae:re;return(0,u.jsx)(a,{...r,activeClassName:r.activeClassName??(t?"menu__link--active":"navbar__link--active")})}var ie=n(4549),se=n(260),le=n(7639);const ce={dropdownNavbarItemMobile:"dropdownNavbarItemMobile_S0Fm"};function ue(e,t){return e.some((e=>function(e,t){return!!(0,se.ys)(e.to,t)||!!ee(e.activeBaseRegex,t)||!(!e.activeBasePath||!t.startsWith(e.activeBasePath))}(e,t)))}function de(e){let{items:t,position:n,className:o,onClick:i,...s}=e;const l=(0,r.useRef)(null),[c,d]=(0,r.useState)(!1);return(0,r.useEffect)((()=>{const e=e=>{l.current&&!l.current.contains(e.target)&&d(!1)};return document.addEventListener("mousedown",e),document.addEventListener("touchstart",e),document.addEventListener("focusin",e),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("touchstart",e),document.removeEventListener("focusin",e)}}),[l]),(0,u.jsxs)("div",{ref:l,className:(0,a.A)("navbar__item","dropdown","dropdown--hoverable",{"dropdown--right":"right"===n,"dropdown--show":c}),children:[(0,u.jsx)(ne,{"aria-haspopup":"true","aria-expanded":c,role:"button",href:s.to?void 0:"#",className:(0,a.A)("navbar__link",o),...s,onClick:s.to?void 0:e=>e.preventDefault(),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),d(!c))},children:s.children??s.label}),(0,u.jsx)("ul",{className:"dropdown__menu",children:t.map(((e,t)=>(0,r.createElement)(_e,{isDropdownItem:!0,activeClassName:"dropdown__link--active",...e,key:t})))})]})}function pe(e){let{items:t,className:n,position:o,onClick:i,...l}=e;const c=function(){const{siteConfig:{baseUrl:e}}=(0,le.A)(),{pathname:t}=(0,s.zy)();return t.replace(e,"/")}(),d=ue(t,c),{collapsed:p,toggleCollapsed:f,setCollapsed:m}=(0,ie.u)({initialState:()=>!d});return(0,r.useEffect)((()=>{d&&m(!d)}),[c,d,m]),(0,u.jsxs)("li",{className:(0,a.A)("menu__list-item",{"menu__list-item--collapsed":p}),children:[(0,u.jsx)(ne,{role:"button",className:(0,a.A)(ce.dropdownNavbarItemMobile,"menu__link menu__link--sublist menu__link--sublist-caret",n),...l,onClick:e=>{e.preventDefault(),f()},children:l.children??l.label}),(0,u.jsx)(ie.N,{lazy:!0,as:"ul",className:"menu__list",collapsed:p,children:t.map(((e,t)=>(0,r.createElement)(_e,{mobile:!0,isDropdownItem:!0,onClick:i,activeClassName:"menu__link--active",...e,key:t})))})]})}function fe(e){let{mobile:t=!1,...n}=e;const r=t?pe:de;return(0,u.jsx)(r,{...n})}var me=n(2098);function ge(e){let{width:t=20,height:n=20,...r}=e;return(0,u.jsx)("svg",{viewBox:"0 0 24 24",width:t,height:n,"aria-hidden":!0,...r,children:(0,u.jsx)("path",{fill:"currentColor",d:"M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"})})}const he="iconLanguage_nlXk";var be=n(9175);const ye={navbarSearchContainer:"navbarSearchContainer_Bca1"};function ve(e){let{children:t,className:n}=e;return(0,u.jsx)("div",{className:(0,a.A)(n,ye.navbarSearchContainer),children:t})}var we=n(4721),ke=n(5215);var xe=n(2780);const Se=e=>e.docs.find((t=>t.id===e.mainDocId));const Ee={default:oe,localeDropdown:function(e){let{mobile:t,dropdownItemsBefore:n,dropdownItemsAfter:r,queryString:a="",...o}=e;const{i18n:{currentLocale:i,locales:c,localeConfigs:d}}=(0,le.A)(),p=(0,me.o)(),{search:f,hash:m}=(0,s.zy)(),g=[...n,...c.map((e=>{const n=`${`pathname://${p.createUrl({locale:e,fullyQualified:!1})}`}${f}${m}${a}`;return{label:d[e].label,lang:d[e].htmlLang,to:n,target:"_self",autoAddBaseUrl:!1,className:e===i?t?"menu__link--active":"dropdown__link--active":""}})),...r],h=t?(0,l.T)({message:"Languages",id:"theme.navbar.mobileLanguageDropdown.label",description:"The label for the mobile language switcher dropdown"}):d[i].label;return(0,u.jsx)(fe,{...o,mobile:t,label:(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(ge,{className:he}),h]}),items:g})},search:function(e){let{mobile:t,className:n}=e;return t?null:(0,u.jsx)(ve,{className:n,children:(0,u.jsx)(be.A,{})})},dropdown:fe,html:function(e){let{value:t,className:n,mobile:r=!1,isDropdownItem:o=!1}=e;const i=o?"li":"div";return(0,u.jsx)(i,{className:(0,a.A)({navbar__item:!r&&!o,"menu__list-item":r},n),dangerouslySetInnerHTML:{__html:t}})},doc:function(e){let{docId:t,label:n,docsPluginId:r,...a}=e;const{activeDoc:o}=(0,we.zK)(r),i=(0,ke.QB)(t,r),s=o?.path===i?.path;return null===i||i.unlisted&&!s?null:(0,u.jsx)(oe,{exact:!0,...a,isActive:()=>s||!!o?.sidebar&&o.sidebar===i.sidebar,label:n??i.id,to:i.path})},docSidebar:function(e){let{sidebarId:t,label:n,docsPluginId:r,...a}=e;const{activeDoc:o}=(0,we.zK)(r),i=(0,ke.fW)(t,r).link;if(!i)throw new Error(`DocSidebarNavbarItem: Sidebar with ID "${t}" doesn't have anything to be linked to.`);return(0,u.jsx)(oe,{exact:!0,...a,isActive:()=>o?.sidebar===t,label:n??i.label,to:i.path})},docsVersion:function(e){let{label:t,to:n,docsPluginId:r,...a}=e;const o=(0,ke.Vd)(r)[0],i=t??o.label,s=n??(e=>e.docs.find((t=>t.id===e.mainDocId)))(o).path;return(0,u.jsx)(oe,{...a,label:i,to:s})},docsVersionDropdown:function(e){let{mobile:t,docsPluginId:n,dropdownActiveClassDisabled:r,dropdownItemsBefore:a,dropdownItemsAfter:o,...i}=e;const{search:c,hash:d}=(0,s.zy)(),p=(0,we.zK)(n),f=(0,we.jh)(n),{savePreferredVersionName:m}=(0,xe.g1)(n),g=[...a,...f.map((e=>{const t=p.alternateDocVersions[e.name]??Se(e);return{label:e.label,to:`${t.path}${c}${d}`,isActive:()=>e===p.activeVersion,onClick:()=>m(e.name)}})),...o],h=(0,ke.Vd)(n)[0],b=t&&g.length>1?(0,l.T)({id:"theme.navbar.mobileVersionsDropdown.label",message:"Versions",description:"The label for the navbar versions dropdown on mobile view"}):h.label,y=t&&g.length>1?void 0:Se(h).path;return g.length<=1?(0,u.jsx)(oe,{...i,mobile:t,label:b,to:y,isActive:r?()=>!1:void 0}):(0,u.jsx)(fe,{...i,mobile:t,label:b,to:y,items:g,isActive:r?()=>!1:void 0})}};function _e(e){let{type:t,...n}=e;const r=function(e,t){return e&&"default"!==e?e:"items"in t?"dropdown":"default"}(t,n),a=Ee[r];if(!a)throw new Error(`No NavbarItem component found for type "${t}".`);return(0,u.jsx)(a,{...n})}function Ce(){const e=(0,N.M)(),t=(0,w.p)().navbar.items;return(0,u.jsx)("ul",{className:"menu__list",children:t.map(((t,n)=>(0,r.createElement)(_e,{mobile:!0,...t,onClick:()=>e.toggle(),key:n})))})}function Ae(e){return(0,u.jsx)("button",{...e,type:"button",className:"clean-btn navbar-sidebar__back",children:(0,u.jsx)(l.A,{id:"theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel",description:"The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)",children:"\u2190 Back to main menu"})})}function Te(){const e=0===(0,w.p)().navbar.items.length,t=I();return(0,u.jsxs)(u.Fragment,{children:[!e&&(0,u.jsx)(Ae,{onClick:()=>t.hide()}),t.content]})}function Ne(){const e=(0,N.M)();var t;return void 0===(t=e.shown)&&(t=!0),(0,r.useEffect)((()=>(document.body.style.overflow=t?"hidden":"visible",()=>{document.body.style.overflow="visible"})),[t]),e.shouldRender?(0,u.jsx)(M,{header:(0,u.jsx)(Q,{}),primaryMenu:(0,u.jsx)(Ce,{}),secondaryMenu:(0,u.jsx)(Te,{})}):null}const Le={navbarHideable:"navbarHideable_m1mJ",navbarHidden:"navbarHidden_jGov"};function Oe(e){return(0,u.jsx)("div",{role:"presentation",...e,className:(0,a.A)("navbar-sidebar__backdrop",e.className)})}function Pe(e){let{children:t}=e;const{navbar:{hideOnScroll:n,style:o}}=(0,w.p)(),i=(0,N.M)(),{navbarRef:s,isNavbarVisible:d}=function(e){const[t,n]=(0,r.useState)(e),a=(0,r.useRef)(!1),o=(0,r.useRef)(0),i=(0,r.useCallback)((e=>{null!==e&&(o.current=e.getBoundingClientRect().height)}),[]);return(0,L.Mq)(((t,r)=>{let{scrollY:i}=t;if(!e)return;if(i=s?n(!1):i+c{if(!e)return;const r=t.location.hash;if(r?document.getElementById(r.substring(1)):void 0)return a.current=!0,void n(!1);n(!0)})),{navbarRef:i,isNavbarVisible:t}}(n);return(0,u.jsxs)("nav",{ref:s,"aria-label":(0,l.T)({id:"theme.NavBar.navAriaLabel",message:"Main",description:"The ARIA label for the main navigation"}),className:(0,a.A)("navbar","navbar--fixed-top",n&&[Le.navbarHideable,!d&&Le.navbarHidden],{"navbar--dark":"dark"===o,"navbar--primary":"primary"===o,"navbar-sidebar--show":i.shown}),children:[t,(0,u.jsx)(Oe,{onClick:i.toggle}),(0,u.jsx)(Ne,{})]})}var De=n(4609);const je={errorBoundaryError:"errorBoundaryError_a6uf",errorBoundaryFallback:"errorBoundaryFallback_VBag"};function Re(e){return(0,u.jsx)("button",{type:"button",...e,children:(0,u.jsx)(l.A,{id:"theme.ErrorPageContent.tryAgain",description:"The label of the button to try again rendering when the React error boundary captures an error",children:"Try again"})})}function Ie(e){let{error:t}=e;const n=(0,De.getErrorCausalChain)(t).map((e=>e.message)).join("\n\nCause:\n");return(0,u.jsx)("p",{className:je.errorBoundaryError,children:n})}class Me extends r.Component{componentDidCatch(e,t){throw this.props.onError(e,t)}render(){return this.props.children}}const ze="right";function Fe(e){let{width:t=30,height:n=30,className:r,...a}=e;return(0,u.jsx)("svg",{className:r,width:t,height:n,viewBox:"0 0 30 30","aria-hidden":"true",...a,children:(0,u.jsx)("path",{stroke:"currentColor",strokeLinecap:"round",strokeMiterlimit:"10",strokeWidth:"2",d:"M4 7h22M4 15h22M4 23h22"})})}function Be(){const{toggle:e,shown:t}=(0,N.M)();return(0,u.jsx)("button",{onClick:e,"aria-label":(0,l.T)({id:"theme.docs.sidebar.toggleSidebarButtonAriaLabel",message:"Toggle navigation bar",description:"The ARIA label for hamburger menu button of mobile navigation"}),"aria-expanded":t,className:"navbar__toggle clean-btn",type:"button",children:(0,u.jsx)(Fe,{})})}const $e={colorModeToggle:"colorModeToggle_DEke"};function Ue(e){let{items:t}=e;return(0,u.jsx)(u.Fragment,{children:t.map(((e,t)=>(0,u.jsx)(Me,{onError:t=>new Error(`A theme navbar item failed to render.\nPlease double-check the following navbar item (themeConfig.navbar.items) of your Docusaurus config:\n${JSON.stringify(e,null,2)}`,{cause:t}),children:(0,u.jsx)(_e,{...e})},t)))})}function He(e){let{left:t,right:n}=e;return(0,u.jsxs)("div",{className:"navbar__inner",children:[(0,u.jsx)("div",{className:"navbar__items",children:t}),(0,u.jsx)("div",{className:"navbar__items navbar__items--right",children:n})]})}function Ve(){const e=(0,N.M)(),t=(0,w.p)().navbar.items,[n,r]=function(e){function t(e){return"left"===(e.position??ze)}return[e.filter(t),e.filter((e=>!t(e)))]}(t),a=t.find((e=>"search"===e.type));return(0,u.jsx)(He,{left:(0,u.jsxs)(u.Fragment,{children:[!e.disabled&&(0,u.jsx)(Be,{}),(0,u.jsx)(Y,{}),(0,u.jsx)(Ue,{items:n})]}),right:(0,u.jsxs)(u.Fragment,{children:[(0,u.jsx)(Ue,{items:r}),(0,u.jsx)(G,{className:$e.colorModeToggle}),!a&&(0,u.jsx)(ve,{children:(0,u.jsx)(be.A,{})})]})})}function We(){return(0,u.jsx)(Pe,{children:(0,u.jsx)(Ve,{})})}function Ge(e){let{item:t}=e;const{to:n,href:r,label:a,prependBaseUrlToHref:o,...i}=t,s=(0,X.Ay)(n),l=(0,X.Ay)(r,{forcePrependBaseUrl:!0});return(0,u.jsxs)(Z.A,{className:"footer__link-item",...r?{href:o?l:r}:{to:s},...i,children:[a,r&&!(0,J.A)(r)&&(0,u.jsx)(te.A,{})]})}function qe(e){let{item:t}=e;return t.html?(0,u.jsx)("li",{className:"footer__item",dangerouslySetInnerHTML:{__html:t.html}}):(0,u.jsx)("li",{className:"footer__item",children:(0,u.jsx)(Ge,{item:t})},t.href??t.to)}function Ye(e){let{column:t}=e;return(0,u.jsxs)("div",{className:"col footer__col",children:[(0,u.jsx)("div",{className:"footer__title",children:t.title}),(0,u.jsx)("ul",{className:"footer__items clean-list",children:t.items.map(((e,t)=>(0,u.jsx)(qe,{item:e},t)))})]})}function Ke(e){let{columns:t}=e;return(0,u.jsx)("div",{className:"row footer__links",children:t.map(((e,t)=>(0,u.jsx)(Ye,{column:e},t)))})}function Qe(){return(0,u.jsx)("span",{className:"footer__link-separator",children:"\xb7"})}function Ze(e){let{item:t}=e;return t.html?(0,u.jsx)("span",{className:"footer__link-item",dangerouslySetInnerHTML:{__html:t.html}}):(0,u.jsx)(Ge,{item:t})}function Xe(e){let{links:t}=e;return(0,u.jsx)("div",{className:"footer__links text--center",children:(0,u.jsx)("div",{className:"footer__links",children:t.map(((e,n)=>(0,u.jsxs)(r.Fragment,{children:[(0,u.jsx)(Ze,{item:e}),t.length!==n+1&&(0,u.jsx)(Qe,{})]},n)))})})}function Je(e){let{links:t}=e;return function(e){return"title"in e[0]}(t)?(0,u.jsx)(Ke,{columns:t}):(0,u.jsx)(Xe,{links:t})}var et=n(975);const tt={footerLogoLink:"footerLogoLink_BH7S"};function nt(e){let{logo:t}=e;const{withBaseUrl:n}=(0,X.hH)(),r={light:n(t.src),dark:n(t.srcDark??t.src)};return(0,u.jsx)(et.A,{className:(0,a.A)("footer__logo",t.className),alt:t.alt,sources:r,width:t.width,height:t.height,style:t.style})}function rt(e){let{logo:t}=e;return t.href?(0,u.jsx)(Z.A,{href:t.href,className:tt.footerLogoLink,target:t.target,children:(0,u.jsx)(nt,{logo:t})}):(0,u.jsx)(nt,{logo:t})}function at(e){let{copyright:t}=e;return(0,u.jsx)("div",{className:"footer__copyright",dangerouslySetInnerHTML:{__html:t}})}function ot(e){let{style:t,links:n,logo:r,copyright:o}=e;return(0,u.jsx)("footer",{className:(0,a.A)("footer",{"footer--dark":"dark"===t}),children:(0,u.jsxs)("div",{className:"container container-fluid",children:[n,(r||o)&&(0,u.jsxs)("div",{className:"footer__bottom text--center",children:[r&&(0,u.jsx)("div",{className:"margin-bottom--sm",children:r}),o]})]})})}function it(){const{footer:e}=(0,w.p)();if(!e)return null;const{copyright:t,links:n,logo:r,style:a}=e;return(0,u.jsx)(ot,{style:a,links:n&&n.length>0&&(0,u.jsx)(Je,{links:n}),logo:r&&(0,u.jsx)(rt,{logo:r}),copyright:t&&(0,u.jsx)(at,{copyright:t})})}const st=r.memo(it),lt=(0,O.fM)([z.a,k.o,L.Tv,xe.VQ,i.Jx,function(e){let{children:t}=e;return(0,u.jsx)(P.y_,{children:(0,u.jsx)(N.e,{children:(0,u.jsx)(j,{children:t})})})}]);function ct(e){let{children:t}=e;return(0,u.jsx)(lt,{children:t})}var ut=n(5225);function dt(e){let{error:t,tryAgain:n}=e;return(0,u.jsx)("main",{className:"container margin-vert--xl",children:(0,u.jsx)("div",{className:"row",children:(0,u.jsxs)("div",{className:"col col--6 col--offset-3",children:[(0,u.jsx)(ut.A,{as:"h1",className:"hero__title",children:(0,u.jsx)(l.A,{id:"theme.ErrorPageContent.title",description:"The title of the fallback page when the page crashed",children:"This page crashed."})}),(0,u.jsx)("div",{className:"margin-vert--lg",children:(0,u.jsx)(Re,{onClick:n,className:"button button--primary shadow--lw"})}),(0,u.jsx)("hr",{}),(0,u.jsx)("div",{className:"margin-vert--md",children:(0,u.jsx)(Ie,{error:t})})]})})})}const pt={mainWrapper:"mainWrapper_z2l0"};function ft(e){const{children:t,noFooter:n,wrapperClassName:r,title:s,description:l}=e;return(0,b.J)(),(0,u.jsxs)(ct,{children:[(0,u.jsx)(i.be,{title:s,description:l}),(0,u.jsx)(v,{}),(0,u.jsx)(T,{}),(0,u.jsx)(We,{}),(0,u.jsx)("div",{id:d,className:(0,a.A)(h.G.wrapper.main,pt.mainWrapper,r),children:(0,u.jsx)(o.A,{fallback:e=>(0,u.jsx)(dt,{...e}),children:t})}),!n&&(0,u.jsx)(st,{})]})}},20:(e,t,n)=>{"use strict";n.d(t,{A:()=>u});n(6540);var r=n(4783),a=n(8180),o=n(7639),i=n(6957),s=n(975),l=n(4848);function c(e){let{logo:t,alt:n,imageClassName:r}=e;const o={light:(0,a.Ay)(t.src),dark:(0,a.Ay)(t.srcDark||t.src)},i=(0,l.jsx)(s.A,{className:t.className,sources:o,height:t.height,width:t.width,alt:n,style:t.style});return r?(0,l.jsx)("div",{className:r,children:i}):i}function u(e){const{siteConfig:{title:t}}=(0,o.A)(),{navbar:{title:n,logo:s}}=(0,i.p)(),{imageClassName:u,titleClassName:d,...p}=e,f=(0,a.Ay)(s?.href||"/"),m=n?"":t,g=s?.alt??m;return(0,l.jsxs)(r.A,{to:f,...p,...s?.target&&{target:s.target},children:[s&&(0,l.jsx)(c,{logo:s,alt:g,imageClassName:u}),null!=n&&(0,l.jsx)("b",{className:d,children:n})]})}},1210:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});n(6540);var r=n(1141),a=n(4848);function o(e){let{locale:t,version:n,tag:o}=e;const i=t;return(0,a.jsxs)(r.A,{children:[t&&(0,a.jsx)("meta",{name:"docusaurus_locale",content:t}),n&&(0,a.jsx)("meta",{name:"docusaurus_version",content:n}),o&&(0,a.jsx)("meta",{name:"docusaurus_tag",content:o}),i&&(0,a.jsx)("meta",{name:"docsearch:language",content:i}),n&&(0,a.jsx)("meta",{name:"docsearch:version",content:n}),o&&(0,a.jsx)("meta",{name:"docsearch:docusaurus_tag",content:o})]})}},975:(e,t,n)=>{"use strict";n.d(t,{A:()=>u});var r=n(6540),a=n(4164),o=n(1062),i=n(7710);const s={themedComponent:"themedComponent_mlkZ","themedComponent--light":"themedComponent--light_NVdE","themedComponent--dark":"themedComponent--dark_xIcU"};var l=n(4848);function c(e){let{className:t,children:n}=e;const c=(0,o.A)(),{colorMode:u}=(0,i.G)();return(0,l.jsx)(l.Fragment,{children:(c?"dark"===u?["dark"]:["light"]:["light","dark"]).map((e=>{const o=n({theme:e,className:(0,a.A)(t,s.themedComponent,s[`themedComponent--${e}`])});return(0,l.jsx)(r.Fragment,{children:o},e)}))})}function u(e){const{sources:t,className:n,alt:r,...a}=e;return(0,l.jsx)(c,{className:n,children:e=>{let{theme:n,className:o}=e;return(0,l.jsx)("img",{src:t[n],alt:r,className:o,...a})}})}},4549:(e,t,n)=>{"use strict";n.d(t,{N:()=>b,u:()=>c});var r=n(6540),a=n(1712),o=n(6494),i=n(6350),s=n(4848);const l="ease-in-out";function c(e){let{initialState:t}=e;const[n,a]=(0,r.useState)(t??!1),o=(0,r.useCallback)((()=>{a((e=>!e))}),[]);return{collapsed:n,setCollapsed:a,toggleCollapsed:o}}const u={display:"none",overflow:"hidden",height:"0px"},d={display:"block",overflow:"visible",height:"auto"};function p(e,t){const n=t?u:d;e.style.display=n.display,e.style.overflow=n.overflow,e.style.height=n.height}function f(e){let{collapsibleRef:t,collapsed:n,animation:a}=e;const o=(0,r.useRef)(!1);(0,r.useEffect)((()=>{const e=t.current;function r(){const t=e.scrollHeight,n=a?.duration??function(e){if((0,i.O)())return 1;const t=e/36;return Math.round(10*(4+15*t**.25+t/5))}(t);return{transition:`height ${n}ms ${a?.easing??l}`,height:`${t}px`}}function s(){const t=r();e.style.transition=t.transition,e.style.height=t.height}if(!o.current)return p(e,n),void(o.current=!0);return e.style.willChange="height",function(){const t=requestAnimationFrame((()=>{n?(s(),requestAnimationFrame((()=>{e.style.height=u.height,e.style.overflow=u.overflow}))):(e.style.display="block",requestAnimationFrame((()=>{s()})))}));return()=>cancelAnimationFrame(t)}()}),[t,n,a])}function m(e){if(!a.A.canUseDOM)return e?u:d}function g(e){let{as:t="div",collapsed:n,children:a,animation:o,onCollapseTransitionEnd:i,className:l,disableSSRStyle:c}=e;const u=(0,r.useRef)(null);return f({collapsibleRef:u,collapsed:n,animation:o}),(0,s.jsx)(t,{ref:u,style:c?void 0:m(n),onTransitionEnd:e=>{"height"===e.propertyName&&(p(u.current,n),i?.(n))},className:l,children:a})}function h(e){let{collapsed:t,...n}=e;const[a,i]=(0,r.useState)(!t),[l,c]=(0,r.useState)(t);return(0,o.A)((()=>{t||i(!0)}),[t]),(0,o.A)((()=>{a&&c(t)}),[a,t]),a?(0,s.jsx)(g,{...n,collapsed:l}):null}function b(e){let{lazy:t,...n}=e;const r=t?h:g;return(0,s.jsx)(r,{...n})}},2:(e,t,n)=>{"use strict";n.d(t,{M:()=>g,o:()=>m});var r=n(6540),a=n(1062),o=n(9900),i=n(4799),s=n(6957),l=n(4848);const c=(0,o.Wf)("docusaurus.announcement.dismiss"),u=(0,o.Wf)("docusaurus.announcement.id"),d=()=>"true"===c.get(),p=e=>c.set(String(e)),f=r.createContext(null);function m(e){let{children:t}=e;const n=function(){const{announcementBar:e}=(0,s.p)(),t=(0,a.A)(),[n,o]=(0,r.useState)((()=>!!t&&d()));(0,r.useEffect)((()=>{o(d())}),[]);const i=(0,r.useCallback)((()=>{p(!0),o(!0)}),[]);return(0,r.useEffect)((()=>{if(!e)return;const{id:t}=e;let n=u.get();"annoucement-bar"===n&&(n="announcement-bar");const r=t!==n;u.set(t),r&&p(!1),!r&&d()||o(!1)}),[e]),(0,r.useMemo)((()=>({isActive:!!e&&!n,close:i})),[e,n,i])}();return(0,l.jsx)(f.Provider,{value:n,children:t})}function g(){const e=(0,r.useContext)(f);if(!e)throw new i.dV("AnnouncementBarProvider");return e}},7710:(e,t,n)=>{"use strict";n.d(t,{G:()=>b,a:()=>h});var r=n(6540),a=n(1712),o=n(4799),i=n(9900),s=n(6957),l=n(4848);const c=r.createContext(void 0),u="theme",d=(0,i.Wf)(u),p={light:"light",dark:"dark"},f=e=>e===p.dark?p.dark:p.light,m=e=>a.A.canUseDOM?f(document.documentElement.getAttribute("data-theme")):f(e),g=e=>{d.set(f(e))};function h(e){let{children:t}=e;const n=function(){const{colorMode:{defaultMode:e,disableSwitch:t,respectPrefersColorScheme:n}}=(0,s.p)(),[a,o]=(0,r.useState)(m(e));(0,r.useEffect)((()=>{t&&d.del()}),[t]);const i=(0,r.useCallback)((function(t,r){void 0===r&&(r={});const{persist:a=!0}=r;t?(o(t),a&&g(t)):(o(n?window.matchMedia("(prefers-color-scheme: dark)").matches?p.dark:p.light:e),d.del())}),[n,e]);(0,r.useEffect)((()=>{document.documentElement.setAttribute("data-theme",f(a))}),[a]),(0,r.useEffect)((()=>{if(t)return;const e=e=>{if(e.key!==u)return;const t=d.get();null!==t&&i(f(t))};return window.addEventListener("storage",e),()=>window.removeEventListener("storage",e)}),[t,i]);const l=(0,r.useRef)(!1);return(0,r.useEffect)((()=>{if(t&&!n)return;const e=window.matchMedia("(prefers-color-scheme: dark)"),r=()=>{window.matchMedia("print").matches||l.current?l.current=window.matchMedia("print").matches:i(null)};return e.addListener(r),()=>e.removeListener(r)}),[i,t,n]),(0,r.useMemo)((()=>({colorMode:a,setColorMode:i,get isDarkTheme(){return a===p.dark},setLightTheme(){i(p.light)},setDarkTheme(){i(p.dark)}})),[a,i])}();return(0,l.jsx)(c.Provider,{value:n,children:t})}function b(){const e=(0,r.useContext)(c);if(null==e)throw new o.dV("ColorModeProvider","Please see https://docusaurus.io/docs/api/themes/configuration#use-color-mode.");return e}},2780:(e,t,n)=>{"use strict";n.d(t,{VQ:()=>b,g1:()=>v});var r=n(6540),a=n(4721),o=n(4598),i=n(6957),s=n(5215),l=n(4799),c=n(9900),u=n(4848);const d=e=>`docs-preferred-version-${e}`,p={save:(e,t,n)=>{(0,c.Wf)(d(e),{persistence:t}).set(n)},read:(e,t)=>(0,c.Wf)(d(e),{persistence:t}).get(),clear:(e,t)=>{(0,c.Wf)(d(e),{persistence:t}).del()}},f=e=>Object.fromEntries(e.map((e=>[e,{preferredVersionName:null}])));const m=r.createContext(null);function g(){const e=(0,a.Gy)(),t=(0,i.p)().docs.versionPersistence,n=(0,r.useMemo)((()=>Object.keys(e)),[e]),[o,s]=(0,r.useState)((()=>f(n)));(0,r.useEffect)((()=>{s(function(e){let{pluginIds:t,versionPersistence:n,allDocsData:r}=e;function a(e){const t=p.read(e,n);return r[e].versions.some((e=>e.name===t))?{preferredVersionName:t}:(p.clear(e,n),{preferredVersionName:null})}return Object.fromEntries(t.map((e=>[e,a(e)])))}({allDocsData:e,versionPersistence:t,pluginIds:n}))}),[e,t,n]);return[o,(0,r.useMemo)((()=>({savePreferredVersion:function(e,n){p.save(e,t,n),s((t=>({...t,[e]:{preferredVersionName:n}})))}})),[t])]}function h(e){let{children:t}=e;const n=g();return(0,u.jsx)(m.Provider,{value:n,children:t})}function b(e){let{children:t}=e;return s.C5?(0,u.jsx)(h,{children:t}):(0,u.jsx)(u.Fragment,{children:t})}function y(){const e=(0,r.useContext)(m);if(!e)throw new l.dV("DocsPreferredVersionContextProvider");return e}function v(e){void 0===e&&(e=o.W);const t=(0,a.ht)(e),[n,i]=y(),{preferredVersionName:s}=n[e];return{preferredVersion:t.versions.find((e=>e.name===s))??null,savePreferredVersionName:(0,r.useCallback)((t=>{i.savePreferredVersion(e,t)}),[i,e])}}},403:(e,t,n)=>{"use strict";n.d(t,{V:()=>l,t:()=>c});var r=n(6540),a=n(4799),o=n(4848);const i=Symbol("EmptyContext"),s=r.createContext(i);function l(e){let{children:t,name:n,items:a}=e;const i=(0,r.useMemo)((()=>n&&a?{name:n,items:a}:null),[n,a]);return(0,o.jsx)(s.Provider,{value:i,children:t})}function c(){const e=(0,r.useContext)(s);if(e===i)throw new a.dV("DocsSidebarProvider");return e}},3403:(e,t,n)=>{"use strict";n.d(t,{n:()=>s,r:()=>l});var r=n(6540),a=n(4799),o=n(4848);const i=r.createContext(null);function s(e){let{children:t,version:n}=e;return(0,o.jsx)(i.Provider,{value:n,children:t})}function l(){const e=(0,r.useContext)(i);if(null===e)throw new a.dV("DocsVersionProvider");return e}},1938:(e,t,n)=>{"use strict";n.d(t,{M:()=>f,e:()=>p});var r=n(6540),a=n(763),o=n(2216),i=n(2814),s=n(6957),l=n(4799),c=n(4848);const u=r.createContext(void 0);function d(){const e=function(){const e=(0,a.YL)(),{items:t}=(0,s.p)().navbar;return 0===t.length&&!e.component}(),t=(0,o.l)(),n=!e&&"mobile"===t,[l,c]=(0,r.useState)(!1);(0,i.$Z)((()=>{if(l)return c(!1),!1}));const u=(0,r.useCallback)((()=>{c((e=>!e))}),[]);return(0,r.useEffect)((()=>{"desktop"===t&&c(!1)}),[t]),(0,r.useMemo)((()=>({disabled:e,shouldRender:n,toggle:u,shown:l})),[e,n,u,l])}function p(e){let{children:t}=e;const n=d();return(0,c.jsx)(u.Provider,{value:n,children:t})}function f(){const e=r.useContext(u);if(void 0===e)throw new l.dV("NavbarMobileSidebarProvider");return e}},763:(e,t,n)=>{"use strict";n.d(t,{GX:()=>c,YL:()=>l,y_:()=>s});var r=n(6540),a=n(4799),o=n(4848);const i=r.createContext(null);function s(e){let{children:t}=e;const n=(0,r.useState)({component:null,props:null});return(0,o.jsx)(i.Provider,{value:n,children:t})}function l(){const e=(0,r.useContext)(i);if(!e)throw new a.dV("NavbarSecondaryMenuContentProvider");return e[0]}function c(e){let{component:t,props:n}=e;const o=(0,r.useContext)(i);if(!o)throw new a.dV("NavbarSecondaryMenuContentProvider");const[,s]=o,l=(0,a.Be)(n);return(0,r.useEffect)((()=>{s({component:t,props:l})}),[s,t,l]),(0,r.useEffect)((()=>()=>s({component:null,props:null})),[s]),null}},9503:(e,t,n)=>{"use strict";n.d(t,{w:()=>a,J:()=>o});var r=n(6540);const a="navigation-with-keyboard";function o(){(0,r.useEffect)((()=>{function e(e){"keydown"===e.type&&"Tab"===e.key&&document.body.classList.add(a),"mousedown"===e.type&&document.body.classList.remove(a)}return document.addEventListener("keydown",e),document.addEventListener("mousedown",e),()=>{document.body.classList.remove(a),document.removeEventListener("keydown",e),document.removeEventListener("mousedown",e)}}),[])}},2216:(e,t,n)=>{"use strict";n.d(t,{l:()=>s});var r=n(6540),a=n(1712);const o={desktop:"desktop",mobile:"mobile",ssr:"ssr"},i=996;function s(e){let{desktopBreakpoint:t=i}=void 0===e?{}:e;const[n,s]=(0,r.useState)((()=>"ssr"));return(0,r.useEffect)((()=>{function e(){s(function(e){if(!a.A.canUseDOM)throw new Error("getWindowSize() should only be called after React hydration");return window.innerWidth>e?o.desktop:o.mobile}(t))}return e(),window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e)}}),[t]),n}},8630:(e,t,n)=>{"use strict";n.d(t,{G:()=>r});const r={page:{blogListPage:"blog-list-page",blogPostPage:"blog-post-page",blogTagsListPage:"blog-tags-list-page",blogTagPostListPage:"blog-tags-post-list-page",docsDocPage:"docs-doc-page",docsTagsListPage:"docs-tags-list-page",docsTagDocListPage:"docs-tags-doc-list-page",mdxPage:"mdx-page"},wrapper:{main:"main-wrapper",blogPages:"blog-wrapper",docsPages:"docs-wrapper",mdxPages:"mdx-wrapper"},common:{editThisPage:"theme-edit-this-page",lastUpdated:"theme-last-updated",backToTopButton:"theme-back-to-top-button",codeBlock:"theme-code-block",admonition:"theme-admonition",unlistedBanner:"theme-unlisted-banner",admonitionType:e=>`theme-admonition-${e}`},layout:{},docs:{docVersionBanner:"theme-doc-version-banner",docVersionBadge:"theme-doc-version-badge",docBreadcrumbs:"theme-doc-breadcrumbs",docMarkdown:"theme-doc-markdown",docTocMobile:"theme-doc-toc-mobile",docTocDesktop:"theme-doc-toc-desktop",docFooter:"theme-doc-footer",docFooterTagsRow:"theme-doc-footer-tags-row",docFooterEditMetaRow:"theme-doc-footer-edit-meta-row",docSidebarContainer:"theme-doc-sidebar-container",docSidebarMenu:"theme-doc-sidebar-menu",docSidebarItemCategory:"theme-doc-sidebar-item-category",docSidebarItemLink:"theme-doc-sidebar-item-link",docSidebarItemCategoryLevel:e=>`theme-doc-sidebar-item-category-level-${e}`,docSidebarItemLinkLevel:e=>`theme-doc-sidebar-item-link-level-${e}`},blog:{blogFooterTagsRow:"theme-blog-footer-tags-row",blogFooterEditMetaRow:"theme-blog-footer-edit-meta-row"},pages:{pageFooterEditMetaRow:"theme-pages-footer-edit-meta-row"}}},6350:(e,t,n)=>{"use strict";function r(){return window.matchMedia("(prefers-reduced-motion: reduce)").matches}n.d(t,{O:()=>r})},5215:(e,t,n)=>{"use strict";n.d(t,{B5:()=>E,C5:()=>p,Nr:()=>f,OF:()=>w,QB:()=>S,Vd:()=>k,Y:()=>y,fW:()=>x,w8:()=>h});var r=n(6540),a=n(6347),o=n(2831),i=n(4721),s=n(2780),l=n(3403),c=n(403),u=n(5167),d=n(260);const p=!!i.Gy;function f(e){return"link"!==e.type||e.unlisted?"category"===e.type?function(e){if(e.href&&!e.linkUnlisted)return e.href;for(const t of e.items){const e=f(t);if(e)return e}}(e):void 0:e.href}const m=(e,t)=>void 0!==e&&(0,d.ys)(e,t),g=(e,t)=>e.some((e=>h(e,t)));function h(e,t){return"link"===e.type?m(e.href,t):"category"===e.type&&(m(e.href,t)||g(e.items,t))}function b(e,t){switch(e.type){case"category":return h(e,t)||e.items.some((e=>b(e,t)));case"link":return!e.unlisted||h(e,t);default:return!0}}function y(e,t){return(0,r.useMemo)((()=>e.filter((e=>b(e,t)))),[e,t])}function v(e){let{sidebarItems:t,pathname:n,onlyCategories:r=!1}=e;const a=[];return function e(t){for(const o of t)if("category"===o.type&&((0,d.ys)(o.href,n)||e(o.items))||"link"===o.type&&(0,d.ys)(o.href,n)){return r&&"category"!==o.type||a.unshift(o),!0}return!1}(t),a}function w(){const e=(0,c.t)(),{pathname:t}=(0,a.zy)(),n=(0,i.vT)()?.pluginData.breadcrumbs;return!1!==n&&e?v({sidebarItems:e.items,pathname:t}):null}function k(e){const{activeVersion:t}=(0,i.zK)(e),{preferredVersion:n}=(0,s.g1)(e),a=(0,i.r7)(e);return(0,r.useMemo)((()=>(0,u.s)([t,n,a].filter(Boolean))),[t,n,a])}function x(e,t){const n=k(t);return(0,r.useMemo)((()=>{const t=n.flatMap((e=>e.sidebars?Object.entries(e.sidebars):[])),r=t.find((t=>t[0]===e));if(!r)throw new Error(`Can't find any sidebar with id "${e}" in version${n.length>1?"s":""} ${n.map((e=>e.name)).join(", ")}".\nAvailable sidebar ids are:\n- ${t.map((e=>e[0])).join("\n- ")}`);return r[1]}),[e,n])}function S(e,t){const n=k(t);return(0,r.useMemo)((()=>{const t=n.flatMap((e=>e.docs)),r=t.find((t=>t.id===e));if(!r){if(n.flatMap((e=>e.draftIds)).includes(e))return null;throw new Error(`Couldn't find any doc with id "${e}" in version${n.length>1?"s":""} "${n.map((e=>e.name)).join(", ")}".\nAvailable doc ids are:\n- ${(0,u.s)(t.map((e=>e.id))).join("\n- ")}`)}return r}),[e,n])}function E(e){let{route:t}=e;const n=(0,a.zy)(),r=(0,l.r)(),i=t.routes,s=i.find((e=>(0,a.B6)(n.pathname,e)));if(!s)return null;const c=s.sidebar,u=c?r.docsSidebars[c]:void 0;return{docElement:(0,o.v)(i),sidebarName:c,sidebarItems:u}}},2814:(e,t,n)=>{"use strict";n.d(t,{$Z:()=>i,aZ:()=>l});var r=n(6540),a=n(6347),o=n(4799);function i(e){!function(e){const t=(0,a.W6)(),n=(0,o._q)(e);(0,r.useEffect)((()=>t.block(((e,t)=>n(e,t)))),[t,n])}(((t,n)=>{if("POP"===n)return e(t,n)}))}function s(e){const t=(0,a.W6)();return(0,r.useSyncExternalStore)(t.listen,(()=>e(t)),(()=>e(t)))}function l(e){return s((t=>null===e?null:new URLSearchParams(t.location.search).get(e)))}},5167:(e,t,n)=>{"use strict";function r(e,t){return void 0===t&&(t=(e,t)=>e===t),e.filter(((n,r)=>e.findIndex((e=>t(e,n)))!==r))}function a(e){return Array.from(new Set(e))}n.d(t,{X:()=>r,s:()=>a})},9817:(e,t,n)=>{"use strict";n.d(t,{e3:()=>f,be:()=>d,Jx:()=>m});var r=n(6540),a=n(4164),o=n(1141),i=n(3363);function s(){const e=r.useContext(i.o);if(!e)throw new Error("Unexpected: no Docusaurus route context found");return e}var l=n(8180),c=n(7639);var u=n(4848);function d(e){let{title:t,description:n,keywords:r,image:a,children:i}=e;const s=function(e){const{siteConfig:t}=(0,c.A)(),{title:n,titleDelimiter:r}=t;return e?.trim().length?`${e.trim()} ${r} ${n}`:n}(t),{withBaseUrl:d}=(0,l.hH)(),p=a?d(a,{absolute:!0}):void 0;return(0,u.jsxs)(o.A,{children:[t&&(0,u.jsx)("title",{children:s}),t&&(0,u.jsx)("meta",{property:"og:title",content:s}),n&&(0,u.jsx)("meta",{name:"description",content:n}),n&&(0,u.jsx)("meta",{property:"og:description",content:n}),r&&(0,u.jsx)("meta",{name:"keywords",content:Array.isArray(r)?r.join(","):r}),p&&(0,u.jsx)("meta",{property:"og:image",content:p}),p&&(0,u.jsx)("meta",{name:"twitter:image",content:p}),i]})}const p=r.createContext(void 0);function f(e){let{className:t,children:n}=e;const i=r.useContext(p),s=(0,a.A)(i,t);return(0,u.jsxs)(p.Provider,{value:s,children:[(0,u.jsx)(o.A,{children:(0,u.jsx)("html",{className:s})}),n]})}function m(e){let{children:t}=e;const n=s(),r=`plugin-${n.plugin.name.replace(/docusaurus-(?:plugin|theme)-(?:content-)?/gi,"")}`;const o=`plugin-id-${n.plugin.id}`;return(0,u.jsx)(f,{className:(0,a.A)(r,o),children:t})}},4799:(e,t,n)=>{"use strict";n.d(t,{Be:()=>c,ZC:()=>s,_q:()=>i,dV:()=>l,fM:()=>u});var r=n(6540),a=n(6494),o=n(4848);function i(e){const t=(0,r.useRef)(e);return(0,a.A)((()=>{t.current=e}),[e]),(0,r.useCallback)((function(){return t.current(...arguments)}),[])}function s(e){const t=(0,r.useRef)();return(0,a.A)((()=>{t.current=e})),t.current}class l extends Error{constructor(e,t){super(),this.name="ReactContextError",this.message=`Hook ${this.stack?.split("\n")[1]?.match(/at (?:\w+\.)?(?\w+)/)?.groups.name??""} is called outside the <${e}>. ${t??""}`}}function c(e){const t=Object.entries(e);return t.sort(((e,t)=>e[0].localeCompare(t[0]))),(0,r.useMemo)((()=>e),t.flat())}function u(e){return t=>{let{children:n}=t;return(0,o.jsx)(o.Fragment,{children:e.reduceRight(((e,t)=>(0,o.jsx)(t,{children:e})),n)})}}},260:(e,t,n)=>{"use strict";n.d(t,{Dt:()=>s,ys:()=>i});var r=n(6540),a=n(2413),o=n(7639);function i(e,t){const n=e=>(!e||e.endsWith("/")?e:`${e}/`)?.toLowerCase();return n(e)===n(t)}function s(){const{baseUrl:e}=(0,o.A)().siteConfig;return(0,r.useMemo)((()=>function(e){let{baseUrl:t,routes:n}=e;function r(e){return e.path===t&&!0===e.exact}function a(e){return e.path===t&&!e.exact}return function e(t){if(0===t.length)return;return t.find(r)||e(t.filter(a).flatMap((e=>e.routes??[])))}(n)}({routes:a.A,baseUrl:e})),[e])}},4245:(e,t,n)=>{"use strict";n.d(t,{Mq:()=>f,Tv:()=>u,a_:()=>m,gk:()=>g});var r=n(6540),a=n(1712),o=n(1062),i=n(6494),s=n(4799),l=n(4848);const c=r.createContext(void 0);function u(e){let{children:t}=e;const n=function(){const e=(0,r.useRef)(!0);return(0,r.useMemo)((()=>({scrollEventsEnabledRef:e,enableScrollEvents:()=>{e.current=!0},disableScrollEvents:()=>{e.current=!1}})),[])}();return(0,l.jsx)(c.Provider,{value:n,children:t})}function d(){const e=(0,r.useContext)(c);if(null==e)throw new s.dV("ScrollControllerProvider");return e}const p=()=>a.A.canUseDOM?{scrollX:window.pageXOffset,scrollY:window.pageYOffset}:null;function f(e,t){void 0===t&&(t=[]);const{scrollEventsEnabledRef:n}=d(),a=(0,r.useRef)(p()),o=(0,s._q)(e);(0,r.useEffect)((()=>{const e=()=>{if(!n.current)return;const e=p();o(e,a.current),a.current=e},t={passive:!0};return e(),window.addEventListener("scroll",e,t),()=>window.removeEventListener("scroll",e,t)}),[o,n,...t])}function m(){const e=d(),t=function(){const e=(0,r.useRef)({elem:null,top:0}),t=(0,r.useCallback)((t=>{e.current={elem:t,top:t.getBoundingClientRect().top}}),[]),n=(0,r.useCallback)((()=>{const{current:{elem:t,top:n}}=e;if(!t)return{restored:!1};const r=t.getBoundingClientRect().top-n;return r&&window.scrollBy({left:0,top:r}),e.current={elem:null,top:0},{restored:0!==r}}),[]);return(0,r.useMemo)((()=>({save:t,restore:n})),[n,t])}(),n=(0,r.useRef)(void 0),a=(0,r.useCallback)((r=>{t.save(r),e.disableScrollEvents(),n.current=()=>{const{restored:r}=t.restore();if(n.current=void 0,r){const t=()=>{e.enableScrollEvents(),window.removeEventListener("scroll",t)};window.addEventListener("scroll",t)}else e.enableScrollEvents()}}),[e,t]);return(0,i.A)((()=>{queueMicrotask((()=>n.current?.()))})),{blockElementScrollPositionUntilNextRender:a}}function g(){const e=(0,r.useRef)(null),t=(0,o.A)()&&"smooth"===getComputedStyle(document.documentElement).scrollBehavior;return{startScroll:n=>{e.current=t?function(e){return window.scrollTo({top:e,behavior:"smooth"}),()=>{}}(n):function(e){let t=null;const n=document.documentElement.scrollTop>e;return function r(){const a=document.documentElement.scrollTop;(n&&a>e||!n&&at&&cancelAnimationFrame(t)}(n)},cancelScroll:()=>e.current?.()}}},1482:(e,t,n)=>{"use strict";n.d(t,{Cy:()=>r,tU:()=>a});n(7639);const r="default";function a(e,t){return`docs-${e}-${t}`}},9900:(e,t,n)=>{"use strict";n.d(t,{Wf:()=>u,Dv:()=>d});var r=n(6540);const a=JSON.parse('{"N":"localStorage","M":""}'),o=a.N;function i(e){let{key:t,oldValue:n,newValue:r,storage:a}=e;if(n===r)return;const o=document.createEvent("StorageEvent");o.initStorageEvent("storage",!1,!1,t,n,r,window.location.href,a),window.dispatchEvent(o)}function s(e){if(void 0===e&&(e=o),"undefined"==typeof window)throw new Error("Browser storage is not available on Node.js/Docusaurus SSR process.");if("none"===e)return null;try{return window[e]}catch(n){return t=n,l||(console.warn("Docusaurus browser storage is not available.\nPossible reasons: running Docusaurus in an iframe, in an incognito browser session, or using too strict browser privacy settings.",t),l=!0),null}var t}let l=!1;const c={get:()=>null,set:()=>{},del:()=>{},listen:()=>()=>{}};function u(e,t){const n=`${e}${a.M}`;if("undefined"==typeof window)return function(e){function t(){throw new Error(`Illegal storage API usage for storage key "${e}".\nDocusaurus storage APIs are not supposed to be called on the server-rendering process.\nPlease only call storage APIs in effects and event handlers.`)}return{get:t,set:t,del:t,listen:t}}(n);const r=s(t?.persistence);return null===r?c:{get:()=>{try{return r.getItem(n)}catch(e){return console.error(`Docusaurus storage error, can't get key=${n}`,e),null}},set:e=>{try{const t=r.getItem(n);r.setItem(n,e),i({key:n,oldValue:t,newValue:e,storage:r})}catch(t){console.error(`Docusaurus storage error, can't set ${n}=${e}`,t)}},del:()=>{try{const e=r.getItem(n);r.removeItem(n),i({key:n,oldValue:e,newValue:null,storage:r})}catch(e){console.error(`Docusaurus storage error, can't delete key=${n}`,e)}},listen:e=>{try{const t=t=>{t.storageArea===r&&t.key===n&&e(t)};return window.addEventListener("storage",t),()=>window.removeEventListener("storage",t)}catch(t){return console.error(`Docusaurus storage error, can't listen for changes of key=${n}`,t),()=>{}}}}}function d(e,t){const n=(0,r.useRef)((()=>null===e?c:u(e,t))).current(),a=(0,r.useCallback)((e=>"undefined"==typeof window?()=>{}:n.listen(e)),[n]);return[(0,r.useSyncExternalStore)(a,(()=>"undefined"==typeof window?null:n.get()),(()=>null)),n]}},2098:(e,t,n)=>{"use strict";n.d(t,{o:()=>i});var r=n(7639),a=n(6347),o=n(4609);function i(){const{siteConfig:{baseUrl:e,url:t,trailingSlash:n},i18n:{defaultLocale:i,currentLocale:s}}=(0,r.A)(),{pathname:l}=(0,a.zy)(),c=(0,o.applyTrailingSlash)(l,{trailingSlash:n,baseUrl:e}),u=s===i?e:e.replace(`/${s}/`,"/"),d=c.replace(e,"");return{createUrl:function(e){let{locale:n,fullyQualified:r}=e;return`${r?t:""}${function(e){return e===i?`${u}`:`${u}${e}/`}(n)}${d}`}}}},4067:(e,t,n)=>{"use strict";n.d(t,{$:()=>i});var r=n(6540),a=n(6347),o=n(4799);function i(e){const t=(0,a.zy)(),n=(0,o.ZC)(t),i=(0,o._q)(e);(0,r.useEffect)((()=>{n&&t!==n&&i({location:t,previousLocation:n})}),[i,t,n])}},6957:(e,t,n)=>{"use strict";n.d(t,{p:()=>a});var r=n(7639);function a(){return(0,r.A)().siteConfig.themeConfig}},4356:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.removeTrailingSlash=t.addLeadingSlash=t.addTrailingSlash=void 0;const r=n(835);function a(e){return e.endsWith("/")?e:`${e}/`}function o(e){return(0,r.removeSuffix)(e,"/")}t.addTrailingSlash=a,t.default=function(e,t){const{trailingSlash:n,baseUrl:r}=t;if(e.startsWith("#"))return e;if(void 0===n)return e;const[i]=e.split(/[#?]/),s="/"===i||i===r?i:(l=i,n?a(l):o(l));var l;return e.replace(i,s)},t.addLeadingSlash=function(e){return(0,r.addPrefix)(e,"/")},t.removeTrailingSlash=o},8274:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getErrorCausalChain=void 0,t.getErrorCausalChain=function e(t){return t.cause?[t,...e(t.cause)]:[t]}},4609:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.getErrorCausalChain=t.removePrefix=t.addSuffix=t.removeSuffix=t.addPrefix=t.removeTrailingSlash=t.addLeadingSlash=t.addTrailingSlash=t.applyTrailingSlash=t.blogPostContainerID=void 0,t.blogPostContainerID="__blog-post-container";var a=n(4356);Object.defineProperty(t,"applyTrailingSlash",{enumerable:!0,get:function(){return r(a).default}}),Object.defineProperty(t,"addTrailingSlash",{enumerable:!0,get:function(){return a.addTrailingSlash}}),Object.defineProperty(t,"addLeadingSlash",{enumerable:!0,get:function(){return a.addLeadingSlash}}),Object.defineProperty(t,"removeTrailingSlash",{enumerable:!0,get:function(){return a.removeTrailingSlash}});var o=n(835);Object.defineProperty(t,"addPrefix",{enumerable:!0,get:function(){return o.addPrefix}}),Object.defineProperty(t,"removeSuffix",{enumerable:!0,get:function(){return o.removeSuffix}}),Object.defineProperty(t,"addSuffix",{enumerable:!0,get:function(){return o.addSuffix}}),Object.defineProperty(t,"removePrefix",{enumerable:!0,get:function(){return o.removePrefix}});var i=n(8274);Object.defineProperty(t,"getErrorCausalChain",{enumerable:!0,get:function(){return i.getErrorCausalChain}})},835:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.removePrefix=t.addSuffix=t.removeSuffix=t.addPrefix=void 0,t.addPrefix=function(e,t){return e.startsWith(t)?e:`${t}${e}`},t.removeSuffix=function(e,t){return""===t?e:e.endsWith(t)?e.slice(0,-t.length):e},t.addSuffix=function(e,t){return e.endsWith(t)?e:`${e}${t}`},t.removePrefix=function(e,t){return e.startsWith(t)?e.slice(t.length):e}},1132:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>f});var r=n(4784),a=Object.assign||function(e){for(var t=1;t1&&void 0!==arguments[1]?arguments[1]:{},r=window.Promise||function(e){function t(){}e(t,t)},o=function(){for(var e=arguments.length,t=Array(e),n=0;n0&&void 0!==arguments[0]?arguments[0]:{}).target,t=function(){var e={width:document.documentElement.clientWidth,height:document.documentElement.clientHeight,left:0,top:0,right:0,bottom:0},t=void 0,n=void 0;if(b.container)if(b.container instanceof Object)t=(e=a({},e,b.container)).width-e.left-e.right-2*b.margin,n=e.height-e.top-e.bottom-2*b.margin;else{var r=(i(b.container)?b.container:document.querySelector(b.container)).getBoundingClientRect(),o=r.width,l=r.height,c=r.left,u=r.top;e=a({},e,{width:o,height:l,left:c,top:u})}t=t||e.width-2*b.margin,n=n||e.height-2*b.margin;var d=y.zoomedHd||y.original,p=s(d)?t:d.naturalWidth||t,f=s(d)?n:d.naturalHeight||n,m=d.getBoundingClientRect(),g=m.top,h=m.left,v=m.width,w=m.height,k=Math.min(Math.max(v,p),t)/v,x=Math.min(Math.max(w,f),n)/w,S=Math.min(k,x),E="scale("+S+") translate3d("+((t-v)/2-h+b.margin+e.left)/S+"px, "+((n-w)/2-g+b.margin+e.top)/S+"px, 0)";y.zoomed.style.transform=E,y.zoomedHd&&(y.zoomedHd.style.transform=E)};return new r((function(n){if(e&&-1===f.indexOf(e))n(w);else{if(y.zoomed)n(w);else{if(e)y.original=e;else{if(!(f.length>0))return void n(w);var r=f;y.original=r[0]}if(y.original.dispatchEvent(c("medium-zoom:open",{detail:{zoom:w}})),h=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0,g=!0,y.zoomed=function(e){var t=e.getBoundingClientRect(),n=t.top,r=t.left,a=t.width,o=t.height,i=e.cloneNode(),s=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0,l=window.pageXOffset||document.documentElement.scrollLeft||document.body.scrollLeft||0;return i.removeAttribute("id"),i.style.position="absolute",i.style.top=n+s+"px",i.style.left=r+l+"px",i.style.width=a+"px",i.style.height=o+"px",i.style.transform="",i}(y.original),document.body.appendChild(v),b.template){var a=i(b.template)?b.template:document.querySelector(b.template);y.template=document.createElement("div"),y.template.appendChild(a.content.cloneNode(!0)),document.body.appendChild(y.template)}if(y.original.parentElement&&"PICTURE"===y.original.parentElement.tagName&&y.original.currentSrc&&(y.zoomed.src=y.original.currentSrc),document.body.appendChild(y.zoomed),window.requestAnimationFrame((function(){document.body.classList.add("medium-zoom--opened")})),y.original.classList.add("medium-zoom-image--hidden"),y.zoomed.classList.add("medium-zoom-image--opened"),y.zoomed.addEventListener("click",d),y.zoomed.addEventListener("transitionend",(function e(){g=!1,y.zoomed.removeEventListener("transitionend",e),y.original.dispatchEvent(c("medium-zoom:opened",{detail:{zoom:w}})),n(w)})),y.original.getAttribute("data-zoom-src")){y.zoomedHd=y.zoomed.cloneNode(),y.zoomedHd.removeAttribute("srcset"),y.zoomedHd.removeAttribute("sizes"),y.zoomedHd.removeAttribute("loading"),y.zoomedHd.src=y.zoomed.getAttribute("data-zoom-src"),y.zoomedHd.onerror=function(){clearInterval(o),console.warn("Unable to reach the zoom image target "+y.zoomedHd.src),y.zoomedHd=null,t()};var o=setInterval((function(){y.zoomedHd.complete&&(clearInterval(o),y.zoomedHd.classList.add("medium-zoom-image--opened"),y.zoomedHd.addEventListener("click",d),document.body.appendChild(y.zoomedHd),t())}),10)}else if(y.original.hasAttribute("srcset")){y.zoomedHd=y.zoomed.cloneNode(),y.zoomedHd.removeAttribute("sizes"),y.zoomedHd.removeAttribute("loading");var s=y.zoomedHd.addEventListener("load",(function(){y.zoomedHd.removeEventListener("load",s),y.zoomedHd.classList.add("medium-zoom-image--opened"),y.zoomedHd.addEventListener("click",d),document.body.appendChild(y.zoomedHd),t()}))}else t()}}}))},d=function(){return new r((function(e){if(!g&&y.original){g=!0,document.body.classList.remove("medium-zoom--opened"),y.zoomed.style.transform="",y.zoomedHd&&(y.zoomedHd.style.transform=""),y.template&&(y.template.style.transition="opacity 150ms",y.template.style.opacity=0),y.original.dispatchEvent(c("medium-zoom:close",{detail:{zoom:w}})),y.zoomed.addEventListener("transitionend",(function t(){y.original.classList.remove("medium-zoom-image--hidden"),document.body.removeChild(y.zoomed),y.zoomedHd&&document.body.removeChild(y.zoomedHd),document.body.removeChild(v),y.zoomed.classList.remove("medium-zoom-image--opened"),y.template&&document.body.removeChild(y.template),g=!1,y.zoomed.removeEventListener("transitionend",t),y.original.dispatchEvent(c("medium-zoom:closed",{detail:{zoom:w}})),y.original=null,y.zoomed=null,y.zoomedHd=null,y.template=null,e(w)}))}else e(w)}))},p=function(){var e=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}).target;return y.original?d():u({target:e})},f=[],m=[],g=!1,h=0,b=n,y={original:null,zoomed:null,zoomedHd:null,template:null};"[object Object]"===Object.prototype.toString.call(t)?b=t:(t||"string"==typeof t)&&o(t);var v=function(e){var t=document.createElement("div");return t.classList.add("medium-zoom-overlay"),t.style.background=e,t}((b=a({margin:0,background:"#fff",scrollOffset:40,container:null,template:null},b)).background);document.addEventListener("click",(function(e){var t=e.target;t!==v?-1!==f.indexOf(t)&&p({target:t}):d()})),document.addEventListener("keyup",(function(e){var t=e.key||e.keyCode;"Escape"!==t&&"Esc"!==t&&27!==t||d()})),document.addEventListener("scroll",(function(){if(!g&&y.original){var e=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop||0;Math.abs(h-e)>b.scrollOffset&&setTimeout(d,150)}})),window.addEventListener("resize",d);var w={open:u,close:d,toggle:p,update:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e;if(e.background&&(v.style.background=e.background),e.container&&e.container instanceof Object&&(t.container=a({},b.container,e.container)),e.template){var n=i(e.template)?e.template:document.querySelector(e.template);t.template=n}return b=a({},b,t),f.forEach((function(e){e.dispatchEvent(c("medium-zoom:update",{detail:{zoom:w}}))})),w},clone:function(){return e(a({},b,arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}))},attach:o,detach:function(){for(var e=arguments.length,t=Array(e),n=0;n0?t.reduce((function(e,t){return[].concat(e,l(t))}),[]):f;return r.forEach((function(e){e.classList.remove("medium-zoom-image"),e.dispatchEvent(c("medium-zoom:detach",{detail:{zoom:w}}))})),f=f.filter((function(e){return-1===r.indexOf(e)})),w},on:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return f.forEach((function(r){r.addEventListener("medium-zoom:"+e,t,n)})),m.push({type:"medium-zoom:"+e,listener:t,options:n}),w},off:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return f.forEach((function(r){r.removeEventListener("medium-zoom:"+e,t,n)})),m=m.filter((function(n){return!(n.type==="medium-zoom:"+e&&n.listener.toString()===t.toString())})),w},getOptions:function(){return b},getImages:function(){return f},getZoomedImage:function(){return y.original}};return w},{themeConfig:d}=r.A;function p(e){var t,n;return document.querySelector('html[data-theme="dark"]')?(null===(t=e.background)||void 0===t?void 0:t.dark)||"rgb(50, 50, 50)":(null===(n=e.background)||void 0===n?void 0:n.light)||"rgb(255, 255, 255)"}const f=function(){if("undefined"==typeof window)return null;let e;const{zoom:t}=d,{selector:n=".markdown img",config:r={}}=t||{};if(!t)return null;r.background=p(t);var a=new MutationObserver((function(){e&&e.update({background:p(t)})}));const o=document.querySelector("html");return a.observe(o,{attributes:!0,attributeFilter:["data-theme"]}),setTimeout((()=>{e&&e.detach(),e=u(n,r)}),1e3),{onRouteUpdate(){setTimeout((()=>{e&&e.detach(),e=u(n,r)}),1e3)}}}()},1513:(e,t,n)=>{"use strict";n.d(t,{zR:()=>w,TM:()=>C,yJ:()=>f,sC:()=>T,AO:()=>p});var r=n(8168);function a(e){return"/"===e.charAt(0)}function o(e,t){for(var n=t,r=n+1,a=e.length;r=0;p--){var f=i[p];"."===f?o(i,p):".."===f?(o(i,p),d++):d&&(o(i,p),d--)}if(!c)for(;d--;d)i.unshift("..");!c||""===i[0]||i[0]&&a(i[0])||i.unshift("");var m=i.join("/");return n&&"/"!==m.substr(-1)&&(m+="/"),m};var s=n(1561);function l(e){return"/"===e.charAt(0)?e:"/"+e}function c(e){return"/"===e.charAt(0)?e.substr(1):e}function u(e,t){return function(e,t){return 0===e.toLowerCase().indexOf(t.toLowerCase())&&-1!=="/?#".indexOf(e.charAt(t.length))}(e,t)?e.substr(t.length):e}function d(e){return"/"===e.charAt(e.length-1)?e.slice(0,-1):e}function p(e){var t=e.pathname,n=e.search,r=e.hash,a=t||"/";return n&&"?"!==n&&(a+="?"===n.charAt(0)?n:"?"+n),r&&"#"!==r&&(a+="#"===r.charAt(0)?r:"#"+r),a}function f(e,t,n,a){var o;"string"==typeof e?(o=function(e){var t=e||"/",n="",r="",a=t.indexOf("#");-1!==a&&(r=t.substr(a),t=t.substr(0,a));var o=t.indexOf("?");return-1!==o&&(n=t.substr(o),t=t.substr(0,o)),{pathname:t,search:"?"===n?"":n,hash:"#"===r?"":r}}(e),o.state=t):(void 0===(o=(0,r.A)({},e)).pathname&&(o.pathname=""),o.search?"?"!==o.search.charAt(0)&&(o.search="?"+o.search):o.search="",o.hash?"#"!==o.hash.charAt(0)&&(o.hash="#"+o.hash):o.hash="",void 0!==t&&void 0===o.state&&(o.state=t));try{o.pathname=decodeURI(o.pathname)}catch(s){throw s instanceof URIError?new URIError('Pathname "'+o.pathname+'" could not be decoded. This is likely caused by an invalid percent-encoding.'):s}return n&&(o.key=n),a?o.pathname?"/"!==o.pathname.charAt(0)&&(o.pathname=i(o.pathname,a.pathname)):o.pathname=a.pathname:o.pathname||(o.pathname="/"),o}function m(){var e=null;var t=[];return{setPrompt:function(t){return e=t,function(){e===t&&(e=null)}},confirmTransitionTo:function(t,n,r,a){if(null!=e){var o="function"==typeof e?e(t,n):e;"string"==typeof o?"function"==typeof r?r(o,a):a(!0):a(!1!==o)}else a(!0)},appendListener:function(e){var n=!0;function r(){n&&e.apply(void 0,arguments)}return t.push(r),function(){n=!1,t=t.filter((function(e){return e!==r}))}},notifyListeners:function(){for(var e=arguments.length,n=new Array(e),r=0;rt?n.splice(t,n.length-t,a):n.push(a),d({action:r,location:a,index:t,entries:n})}}))},replace:function(e,t){var r="REPLACE",a=f(e,t,g(),w.location);u.confirmTransitionTo(a,r,n,(function(e){e&&(w.entries[w.index]=a,d({action:r,location:a}))}))},go:v,goBack:function(){v(-1)},goForward:function(){v(1)},canGo:function(e){var t=w.index+e;return t>=0&&t{"use strict";var r=n(4363),a={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},o={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},i={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},s={};function l(e){return r.isMemo(e)?i:s[e.$$typeof]||a}s[r.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},s[r.Memo]=i;var c=Object.defineProperty,u=Object.getOwnPropertyNames,d=Object.getOwnPropertySymbols,p=Object.getOwnPropertyDescriptor,f=Object.getPrototypeOf,m=Object.prototype;e.exports=function e(t,n,r){if("string"!=typeof n){if(m){var a=f(n);a&&a!==m&&e(t,a,r)}var i=u(n);d&&(i=i.concat(d(n)));for(var s=l(t),g=l(n),h=0;h{"use strict";e.exports=function(e,t,n,r,a,o,i,s){if(!e){var l;if(void 0===t)l=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var c=[n,r,a,o,i,s],u=0;(l=new Error(t.replace(/%s/g,(function(){return c[u++]})))).name="Invariant Violation"}throw l.framesToPop=1,l}}},4634:e=>{e.exports=Array.isArray||function(e){return"[object Array]"==Object.prototype.toString.call(e)}},5300:(e,t,n)=>{"use strict";n.r(t)},8252:(e,t,n)=>{"use strict";n.r(t)},5947:function(e,t,n){var r,a;r=function(){var e,t,n={version:"0.2.0"},r=n.settings={minimum:.08,easing:"ease",positionUsing:"",speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,showSpinner:!0,barSelector:'[role="bar"]',spinnerSelector:'[role="spinner"]',parent:"body",template:'
'};function a(e,t,n){return en?n:e}function o(e){return 100*(-1+e)}function i(e,t,n){var a;return(a="translate3d"===r.positionUsing?{transform:"translate3d("+o(e)+"%,0,0)"}:"translate"===r.positionUsing?{transform:"translate("+o(e)+"%,0)"}:{"margin-left":o(e)+"%"}).transition="all "+t+"ms "+n,a}n.configure=function(e){var t,n;for(t in e)void 0!==(n=e[t])&&e.hasOwnProperty(t)&&(r[t]=n);return this},n.status=null,n.set=function(e){var t=n.isStarted();e=a(e,r.minimum,1),n.status=1===e?null:e;var o=n.render(!t),c=o.querySelector(r.barSelector),u=r.speed,d=r.easing;return o.offsetWidth,s((function(t){""===r.positionUsing&&(r.positionUsing=n.getPositioningCSS()),l(c,i(e,u,d)),1===e?(l(o,{transition:"none",opacity:1}),o.offsetWidth,setTimeout((function(){l(o,{transition:"all "+u+"ms linear",opacity:0}),setTimeout((function(){n.remove(),t()}),u)}),u)):setTimeout(t,u)})),this},n.isStarted=function(){return"number"==typeof n.status},n.start=function(){n.status||n.set(0);var e=function(){setTimeout((function(){n.status&&(n.trickle(),e())}),r.trickleSpeed)};return r.trickle&&e(),this},n.done=function(e){return e||n.status?n.inc(.3+.5*Math.random()).set(1):this},n.inc=function(e){var t=n.status;return t?("number"!=typeof e&&(e=(1-t)*a(Math.random()*t,.1,.95)),t=a(t+e,0,.994),n.set(t)):n.start()},n.trickle=function(){return n.inc(Math.random()*r.trickleRate)},e=0,t=0,n.promise=function(r){return r&&"resolved"!==r.state()?(0===t&&n.start(),e++,t++,r.always((function(){0==--t?(e=0,n.done()):n.set((e-t)/e)})),this):this},n.render=function(e){if(n.isRendered())return document.getElementById("nprogress");u(document.documentElement,"nprogress-busy");var t=document.createElement("div");t.id="nprogress",t.innerHTML=r.template;var a,i=t.querySelector(r.barSelector),s=e?"-100":o(n.status||0),c=document.querySelector(r.parent);return l(i,{transition:"all 0 linear",transform:"translate3d("+s+"%,0,0)"}),r.showSpinner||(a=t.querySelector(r.spinnerSelector))&&f(a),c!=document.body&&u(c,"nprogress-custom-parent"),c.appendChild(t),t},n.remove=function(){d(document.documentElement,"nprogress-busy"),d(document.querySelector(r.parent),"nprogress-custom-parent");var e=document.getElementById("nprogress");e&&f(e)},n.isRendered=function(){return!!document.getElementById("nprogress")},n.getPositioningCSS=function(){var e=document.body.style,t="WebkitTransform"in e?"Webkit":"MozTransform"in e?"Moz":"msTransform"in e?"ms":"OTransform"in e?"O":"";return t+"Perspective"in e?"translate3d":t+"Transform"in e?"translate":"margin"};var s=function(){var e=[];function t(){var n=e.shift();n&&n(t)}return function(n){e.push(n),1==e.length&&t()}}(),l=function(){var e=["Webkit","O","Moz","ms"],t={};function n(e){return e.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,(function(e,t){return t.toUpperCase()}))}function r(t){var n=document.body.style;if(t in n)return t;for(var r,a=e.length,o=t.charAt(0).toUpperCase()+t.slice(1);a--;)if((r=e[a]+o)in n)return r;return t}function a(e){return e=n(e),t[e]||(t[e]=r(e))}function o(e,t,n){t=a(t),e.style[t]=n}return function(e,t){var n,r,a=arguments;if(2==a.length)for(n in t)void 0!==(r=t[n])&&t.hasOwnProperty(n)&&o(e,n,r);else o(e,a[1],a[2])}}();function c(e,t){return("string"==typeof e?e:p(e)).indexOf(" "+t+" ")>=0}function u(e,t){var n=p(e),r=n+t;c(n,t)||(e.className=r.substring(1))}function d(e,t){var n,r=p(e);c(e,t)&&(n=r.replace(" "+t+" "," "),e.className=n.substring(1,n.length-1))}function p(e){return(" "+(e.className||"")+" ").replace(/\s+/gi," ")}function f(e){e&&e.parentNode&&e.parentNode.removeChild(e)}return n},void 0===(a="function"==typeof r?r.call(t,n,t,e):r)||(e.exports=a)},5302:(e,t,n)=>{var r=n(4634);e.exports=f,e.exports.parse=o,e.exports.compile=function(e,t){return s(o(e,t),t)},e.exports.tokensToFunction=s,e.exports.tokensToRegExp=p;var a=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function o(e,t){for(var n,r=[],o=0,i=0,s="",u=t&&t.delimiter||"/";null!=(n=a.exec(e));){var d=n[0],p=n[1],f=n.index;if(s+=e.slice(i,f),i=f+d.length,p)s+=p[1];else{var m=e[i],g=n[2],h=n[3],b=n[4],y=n[5],v=n[6],w=n[7];s&&(r.push(s),s="");var k=null!=g&&null!=m&&m!==g,x="+"===v||"*"===v,S="?"===v||"*"===v,E=n[2]||u,_=b||y;r.push({name:h||o++,prefix:g||"",delimiter:E,optional:S,repeat:x,partial:k,asterisk:!!w,pattern:_?c(_):w?".*":"[^"+l(E)+"]+?"})}}return i{!function(e){var t="\\b(?:BASH|BASHOPTS|BASH_ALIASES|BASH_ARGC|BASH_ARGV|BASH_CMDS|BASH_COMPLETION_COMPAT_DIR|BASH_LINENO|BASH_REMATCH|BASH_SOURCE|BASH_VERSINFO|BASH_VERSION|COLORTERM|COLUMNS|COMP_WORDBREAKS|DBUS_SESSION_BUS_ADDRESS|DEFAULTS_PATH|DESKTOP_SESSION|DIRSTACK|DISPLAY|EUID|GDMSESSION|GDM_LANG|GNOME_KEYRING_CONTROL|GNOME_KEYRING_PID|GPG_AGENT_INFO|GROUPS|HISTCONTROL|HISTFILE|HISTFILESIZE|HISTSIZE|HOME|HOSTNAME|HOSTTYPE|IFS|INSTANCE|JOB|LANG|LANGUAGE|LC_ADDRESS|LC_ALL|LC_IDENTIFICATION|LC_MEASUREMENT|LC_MONETARY|LC_NAME|LC_NUMERIC|LC_PAPER|LC_TELEPHONE|LC_TIME|LESSCLOSE|LESSOPEN|LINES|LOGNAME|LS_COLORS|MACHTYPE|MAILCHECK|MANDATORY_PATH|NO_AT_BRIDGE|OLDPWD|OPTERR|OPTIND|ORBIT_SOCKETDIR|OSTYPE|PAPERSIZE|PATH|PIPESTATUS|PPID|PS1|PS2|PS3|PS4|PWD|RANDOM|REPLY|SECONDS|SELINUX_INIT|SESSION|SESSIONTYPE|SESSION_MANAGER|SHELL|SHELLOPTS|SHLVL|SSH_AUTH_SOCK|TERM|UID|UPSTART_EVENTS|UPSTART_INSTANCE|UPSTART_JOB|UPSTART_SESSION|USER|WINDOWID|XAUTHORITY|XDG_CONFIG_DIRS|XDG_CURRENT_DESKTOP|XDG_DATA_DIRS|XDG_GREETER_DATA_DIR|XDG_MENU_PREFIX|XDG_RUNTIME_DIR|XDG_SEAT|XDG_SEAT_PATH|XDG_SESSION_DESKTOP|XDG_SESSION_ID|XDG_SESSION_PATH|XDG_SESSION_TYPE|XDG_VTNR|XMODIFIERS)\\b",n={pattern:/(^(["']?)\w+\2)[ \t]+\S.*/,lookbehind:!0,alias:"punctuation",inside:null},r={bash:n,environment:{pattern:RegExp("\\$"+t),alias:"constant"},variable:[{pattern:/\$?\(\([\s\S]+?\)\)/,greedy:!0,inside:{variable:[{pattern:/(^\$\(\([\s\S]+)\)\)/,lookbehind:!0},/^\$\(\(/],number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/--|\+\+|\*\*=?|<<=?|>>=?|&&|\|\||[=!+\-*/%<>^&|]=?|[?~:]/,punctuation:/\(\(?|\)\)?|,|;/}},{pattern:/\$\((?:\([^)]+\)|[^()])+\)|`[^`]+`/,greedy:!0,inside:{variable:/^\$\(|^`|\)$|`$/}},{pattern:/\$\{[^}]+\}/,greedy:!0,inside:{operator:/:[-=?+]?|[!\/]|##?|%%?|\^\^?|,,?/,punctuation:/[\[\]]/,environment:{pattern:RegExp("(\\{)"+t),lookbehind:!0,alias:"constant"}}},/\$(?:\w+|[#?*!@$])/],entity:/\\(?:[abceEfnrtv\\"]|O?[0-7]{1,3}|U[0-9a-fA-F]{8}|u[0-9a-fA-F]{4}|x[0-9a-fA-F]{1,2})/};e.languages.bash={shebang:{pattern:/^#!\s*\/.*/,alias:"important"},comment:{pattern:/(^|[^"{\\$])#.*/,lookbehind:!0},"function-name":[{pattern:/(\bfunction\s+)[\w-]+(?=(?:\s*\(?:\s*\))?\s*\{)/,lookbehind:!0,alias:"function"},{pattern:/\b[\w-]+(?=\s*\(\s*\)\s*\{)/,alias:"function"}],"for-or-select":{pattern:/(\b(?:for|select)\s+)\w+(?=\s+in\s)/,alias:"variable",lookbehind:!0},"assign-left":{pattern:/(^|[\s;|&]|[<>]\()\w+(?:\.\w+)*(?=\+?=)/,inside:{environment:{pattern:RegExp("(^|[\\s;|&]|[<>]\\()"+t),lookbehind:!0,alias:"constant"}},alias:"variable",lookbehind:!0},parameter:{pattern:/(^|\s)-{1,2}(?:\w+:[+-]?)?\w+(?:\.\w+)*(?=[=\s]|$)/,alias:"variable",lookbehind:!0},string:[{pattern:/((?:^|[^<])<<-?\s*)(\w+)\s[\s\S]*?(?:\r?\n|\r)\2/,lookbehind:!0,greedy:!0,inside:r},{pattern:/((?:^|[^<])<<-?\s*)(["'])(\w+)\2\s[\s\S]*?(?:\r?\n|\r)\3/,lookbehind:!0,greedy:!0,inside:{bash:n}},{pattern:/(^|[^\\](?:\\\\)*)"(?:\\[\s\S]|\$\([^)]+\)|\$(?!\()|`[^`]+`|[^"\\`$])*"/,lookbehind:!0,greedy:!0,inside:r},{pattern:/(^|[^$\\])'[^']*'/,lookbehind:!0,greedy:!0},{pattern:/\$'(?:[^'\\]|\\[\s\S])*'/,greedy:!0,inside:{entity:r.entity}}],environment:{pattern:RegExp("\\$?"+t),alias:"constant"},variable:r.variable,function:{pattern:/(^|[\s;|&]|[<>]\()(?:add|apropos|apt|apt-cache|apt-get|aptitude|aspell|automysqlbackup|awk|basename|bash|bc|bconsole|bg|bzip2|cal|cargo|cat|cfdisk|chgrp|chkconfig|chmod|chown|chroot|cksum|clear|cmp|column|comm|composer|cp|cron|crontab|csplit|curl|cut|date|dc|dd|ddrescue|debootstrap|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|docker|docker-compose|du|egrep|eject|env|ethtool|expand|expect|expr|fdformat|fdisk|fg|fgrep|file|find|fmt|fold|format|free|fsck|ftp|fuser|gawk|git|gparted|grep|groupadd|groupdel|groupmod|groups|grub-mkconfig|gzip|halt|head|hg|history|host|hostname|htop|iconv|id|ifconfig|ifdown|ifup|import|install|ip|java|jobs|join|kill|killall|less|link|ln|locate|logname|logrotate|look|lpc|lpr|lprint|lprintd|lprintq|lprm|ls|lsof|lynx|make|man|mc|mdadm|mkconfig|mkdir|mke2fs|mkfifo|mkfs|mkisofs|mknod|mkswap|mmv|more|most|mount|mtools|mtr|mutt|mv|nano|nc|netstat|nice|nl|node|nohup|notify-send|npm|nslookup|op|open|parted|passwd|paste|pathchk|ping|pkill|pnpm|podman|podman-compose|popd|pr|printcap|printenv|ps|pushd|pv|quota|quotacheck|quotactl|ram|rar|rcp|reboot|remsync|rename|renice|rev|rm|rmdir|rpm|rsync|scp|screen|sdiff|sed|sendmail|seq|service|sftp|sh|shellcheck|shuf|shutdown|sleep|slocate|sort|split|ssh|stat|strace|su|sudo|sum|suspend|swapon|sync|sysctl|tac|tail|tar|tee|time|timeout|top|touch|tr|traceroute|tsort|tty|umount|uname|unexpand|uniq|units|unrar|unshar|unzip|update-grub|uptime|useradd|userdel|usermod|users|uudecode|uuencode|v|vcpkg|vdir|vi|vim|virsh|vmstat|wait|watch|wc|wget|whereis|which|who|whoami|write|xargs|xdg-open|yarn|yes|zenity|zip|zsh|zypper)(?=$|[)\s;|&])/,lookbehind:!0},keyword:{pattern:/(^|[\s;|&]|[<>]\()(?:case|do|done|elif|else|esac|fi|for|function|if|in|select|then|until|while)(?=$|[)\s;|&])/,lookbehind:!0},builtin:{pattern:/(^|[\s;|&]|[<>]\()(?:\.|:|alias|bind|break|builtin|caller|cd|command|continue|declare|echo|enable|eval|exec|exit|export|getopts|hash|help|let|local|logout|mapfile|printf|pwd|read|readarray|readonly|return|set|shift|shopt|source|test|times|trap|type|typeset|ulimit|umask|unalias|unset)(?=$|[)\s;|&])/,lookbehind:!0,alias:"class-name"},boolean:{pattern:/(^|[\s;|&]|[<>]\()(?:false|true)(?=$|[)\s;|&])/,lookbehind:!0},"file-descriptor":{pattern:/\B&\d\b/,alias:"important"},operator:{pattern:/\d?<>|>\||\+=|=[=~]?|!=?|<<[<-]?|[&\d]?>>|\d[<>]&?|[<>][&=]?|&[>&]?|\|[&|]?/,inside:{"file-descriptor":{pattern:/^\d/,alias:"important"}}},punctuation:/\$?\(\(?|\)\)?|\.\.|[{}[\];\\]/,number:{pattern:/(^|\s)(?:[1-9]\d*|0)(?:[.,]\d+)?\b/,lookbehind:!0}},n.inside=e.languages.bash;for(var a=["comment","function-name","for-or-select","assign-left","parameter","string","environment","function","keyword","builtin","boolean","file-descriptor","operator","punctuation","number"],o=r.variable[1].inside,i=0;i{Prism.languages.json={property:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,lookbehind:!0,greedy:!0},string:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,lookbehind:!0,greedy:!0},comment:{pattern:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},number:/-?\b\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,punctuation:/[{}[\],]/,operator:/:/,boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"}},Prism.languages.webmanifest=Prism.languages.json},9700:()=>{!function(e){function t(e,t){return"___"+e.toUpperCase()+t+"___"}Object.defineProperties(e.languages["markup-templating"]={},{buildPlaceholders:{value:function(n,r,a,o){if(n.language===r){var i=n.tokenStack=[];n.code=n.code.replace(a,(function(e){if("function"==typeof o&&!o(e))return e;for(var a,s=i.length;-1!==n.code.indexOf(a=t(r,s));)++s;return i[s]=e,a})),n.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(n,r){if(n.language===r&&n.tokenStack){n.grammar=e.languages[r];var a=0,o=Object.keys(n.tokenStack);!function i(s){for(var l=0;l=o.length);l++){var c=s[l];if("string"==typeof c||c.content&&"string"==typeof c.content){var u=o[a],d=n.tokenStack[u],p="string"==typeof c?c:c.content,f=t(r,u),m=p.indexOf(f);if(m>-1){++a;var g=p.substring(0,m),h=new e.Token(r,e.tokenize(d,n.grammar),"language-"+r,d),b=p.substring(m+f.length),y=[];g&&y.push.apply(y,i([g])),y.push(h),b&&y.push.apply(y,i([b])),"string"==typeof c?s.splice.apply(s,[l,1].concat(y)):c.content=y}}else c.content&&i(c.content)}return s}(n.tokens)}}}})}(Prism)},132:()=>{!function(e){var t=/(?:[\w-]+|'[^'\n\r]*'|"(?:\\.|[^\\"\r\n])*")/.source;function n(e){return e.replace(/__/g,(function(){return t}))}e.languages.toml={comment:{pattern:/#.*/,greedy:!0},table:{pattern:RegExp(n(/(^[\t ]*\[\s*(?:\[\s*)?)__(?:\s*\.\s*__)*(?=\s*\])/.source),"m"),lookbehind:!0,greedy:!0,alias:"class-name"},key:{pattern:RegExp(n(/(^[\t ]*|[{,]\s*)__(?:\s*\.\s*__)*(?=\s*=)/.source),"m"),lookbehind:!0,greedy:!0,alias:"property"},string:{pattern:/"""(?:\\[\s\S]|[^\\])*?"""|'''[\s\S]*?'''|'[^'\n\r]*'|"(?:\\.|[^\\"\r\n])*"/,greedy:!0},date:[{pattern:/\b\d{4}-\d{2}-\d{2}(?:[T\s]\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}:\d{2})?)?\b/i,alias:"number"},{pattern:/\b\d{2}:\d{2}:\d{2}(?:\.\d+)?\b/,alias:"number"}],number:/(?:\b0(?:x[\da-zA-Z]+(?:_[\da-zA-Z]+)*|o[0-7]+(?:_[0-7]+)*|b[10]+(?:_[10]+)*))\b|[-+]?\b\d+(?:_\d+)*(?:\.\d+(?:_\d+)*)?(?:[eE][+-]?\d+(?:_\d+)*)?\b|[-+]?\b(?:inf|nan)\b/,boolean:/\b(?:false|true)\b/,punctuation:/[.,=[\]{}]/}}(Prism)},3254:(e,t,n)=>{var r={"./prism-bash":7022,"./prism-json":2514,"./prism-toml":132};function a(e){var t=o(e);return n(t)}function o(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}a.keys=function(){return Object.keys(r)},a.resolve=o,e.exports=a,a.id=3254},2694:(e,t,n)=>{"use strict";var r=n(6925);function a(){}function o(){}o.resetWarningCache=a,e.exports=function(){function e(e,t,n,a,o,i){if(i!==r){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function t(){return e}e.isRequired=e;var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:o,resetWarningCache:a};return n.PropTypes=n,n}},5556:(e,t,n)=>{e.exports=n(2694)()},6925:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},2551:(e,t,n)=>{"use strict";var r=n(6540),a=n(9982);function o(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n