const e=`{
    "translation_version": {
        "message": "0"
    },
    "language_de": {
        "message": "Deutsch",
        "comment": "Don't translate!"
    },
    "language_en": {
        "message": "English",
        "_comment": "Don't translate!"
    },
	  "language_bg": {
        "message": "Български",
        "_comment": "Don't translate!"
    },
	  "language_uk": {
        "message": "українська",
        "_comment": "Don't translate!"
    },
    "language_ja": {
        "message": "日本語",
        "_comment": "Don't translate!"
    },
    "language_zh_CN": {
        "message": "简体中文",
        "_comment": "Don't translate!"
    },
    "language_ru": {
        "message": "Русский",
        "_comment": "Don't translate!"
    },
    "language": {
        "message": "Language"
    },
    "options_title": {
        "message": "Application Options"
    },
    "options_receive_app_notifications": {
        "message": "Receive desktop <strong>notification</strong> when application updates"
    },
    "options_improve_configurator": {
        "message": "Send anonymous usage data to the developer team"
    },
    "options_disable3dAcceleration": {
        "message": "Disable 3D Acceleration. If the 3D models are not displayed. Needs app restart."
    },
    "options_showProfileParameters": {
        "message": "Highlight parameters that change when switching battery or control profiles"
    },
    "options_cliAutocomplete": {
        "message": "Advanced CLI AutoComplete"
    },
    "navExpandAll": {
        "message": "Expand All"
    },
    "navCollapseAll": {
        "message": "Collapse All"
    },
    "options_unit_type": {
        "message": "Set how the units render on the configurator only"
    },
    "options_render": {
        "message": "Configurator rendering options"
    },
    "unexpectedError": {
        "message": "Unexpected error: $1"
    },
    "disconnecting": {
        "message": "Disconnecting..."
    },
    "connect": {
        "message": "Connect"
    },
    "connecting": {
        "message": "Connecting"
    },
    "disconnect": {
        "message": "Disconnect"
    },
    "autoConnect": {
        "message": "Auto-Connect"
    },
    "autoConnectEnabled": {
        "message": "Auto-Connect: Enabled - Configurator automatically tries to connect when new port is detected"
    },
    "autoConnectDisabled": {
        "message": "Auto-Connect: Disabled - User needs to select the correct serial port and click \\"Connect\\" button on its own"
    },
    "deviceRebooting": {
        "message": "Device - <span style=\\"color: red\\">Rebooting</span>"
    },
    "deviceReady": {
        "message": "Device - <span style=\\"color: #37a8db\\">Ready</span>"
    },
    "savingDefaults": {
        "message": "Device - <span style=\\"color: red\\">Saving default settings</span>"
    },
    "changeMixerProfileReboot": {
        "message": "Changing mixer profiles requires a reboot. Continue?"
    },
    "fcNotConnected": {
        "message": "Not connected"
    },
    "backupFileIncompatible": {
        "message": "Backup file provided was generated for previous version of the configurator and is incompatible with this version of configurator. Sorry"
    },
    "backupFileUnmigratable": {
        "message": "Backup file provided was generated by a previous version of the configurator and is not migratable. Sorry."
    },
    "configMigrationFrom": {
        "message": "Migrating configuration file generated by configurator: $1"
    },
    "configMigratedTo": {
        "message": "Migrated configuration to configurator: $1"
    },
    "configMigrationSuccessful": {
        "message": "Configuration migration complete, migrations applied: $1"
    },
    "documentation": {
        "message": "Documentation"
    },
    "tabFirmwareFlasher": {
        "message": "Firmware Flasher"
    },
    "tabLanding": {
        "message": "Welcome"
    },
    "tabHelp": {
        "message": "Documentation & Support"
    },
    "navGroupSetup": {
        "message": "Setup & Configuration"
    },
    "navGroupFlight": {
        "message": "Flight Control"
    },
    "navGroupTuning": {
        "message": "Tuning"
    },
    "navGroupNavigation": {
        "message": "Navigation & Mission"
    },
    "navGroupSensors": {
        "message": "Sensors & Peripherals"
    },
    "navGroupLogging": {
        "message": "Data Logging"
    },
    "navGroupProgramming": {
        "message": "Programming"
    },
    "navGroupTools": {
        "message": "Tools"
    },
    "tabSetup": {
        "message": "Status"
    },
    "tabCalibration": {
        "message": "Calibration"
    },
    "tabConfiguration": {
        "message": "Configuration"
    },
    "tabPorts": {
        "message": "Ports"
    },
    "tabPidTuning": {
        "message": "Tuning"
    },
    "tabReceiver": {
        "message": "Receiver"
    },
    "tabMisc": {
        "message": "Miscellaneous"
    },
    "tabModeSelection": {
        "message": "Mode Selection"
    },
    "tabServos": {
        "message": "Servos"
    },
    "tabFailsafe": {
        "message": "Failsafe"
    },
    "tabEzTune": {
        "message": "Ez Tune"
    },
    "tabGPS": {
        "message": "GPS"
    },
    "tabOutputs": {
        "message": "Outputs"
    },
    "tabLedStrip": {
        "message": "LED Strip"
    },
    "tabRawSensorData": {
        "message": "Sensors"
    },
    "tabCLI": {
        "message": "CLI"
    },
    "tabLogging": {
        "message": "Tethered Logging"
    },
    "tabOnboardLogging": {
        "message": "Blackbox"
    },
    "tabAdjustments": {
        "message": "Adjustments"
    },
    "tabAuxiliary": {
        "message": "Modes"
    },
    "tabSitl": {
        "message": "SITL"
    },
    "sitlDemoMode": {
        "message": "Demo Mode"
    },
    "sitlResetDemoModeData": {
        "message": "Reset Demo Mode"
    },
    "sitlOSNotSupported": {
        "message": "SITL is not supported on this operating system."
    },
    "sitlOptions": {
        "message": "SITL Options"
    },
    "sitlEnableSim": {
        "message": "Enable simulator"
    },
    "sitlSimulator": {
        "message": "Simulator"
    },
    "sitlUseImu": {
        "message": "Use IMU"
    },
    "sitlSimIP": {
        "message": "Simulator IP"
    },
    "sitlPort": {
        "message": "Simulator Port"
    },
    "sitlChannelMap": {
        "message": "Channel Mapping"
    },
    "sitlSimInput": {
        "message": "Simulator Input"
    },
    "sitlInavOutput": {
        "message": "INAV Output"
    },
    "sitlLog": {
        "message": "Log"
    },
    "sitlStart": {
        "message": "Start"
    },
    "sitlStop": {
        "message": "Stop"
    },
    "sitlStopped": {
        "message": "SITL stopped\\n"
    },
    "sitlProfiles": {
        "message": "SITL Profiles"
    },
    "sitlNew": {
        "message": "New"
    },
    "sitlSave": {
        "message": "Save"
    },
    "sitlDelete": {
        "message": "Delete"
    },
    "sitlNewProfile": {
        "message": "New SITL Profile"
    },
    "sitlEnterName": {
        "message": "(Profile name)"
    },
    "sitlProfileExists": {
        "message": "A profile with this name already exists."
    },
    "sitlStdProfileCantDeleted": {
        "message": "SITL standard profile can't be deleted."
    },
    "sitlStdProfileCantOverwritten": {
        "message": "SITL standard profile can't be overwritten. Please create a new one."
    },
    "serialReceiver": {
        "message": "Serial receiver"
    },
    "sitlSerialProtocoll": {
        "message": "Serial port settings preset for RX Protocol of connected receiver"
    },
    "sitlSerialStopbits": {
        "message": "Stopbits"
    },
    "sitlSerialPort": {
        "message": "Serial receiver/Proxy FC is connectected to host's serial port"
    },
    "sitlSerialUART": {
        "message": "Serial receiver is configured on SITL's UART"
    },
    "sitlSerialParity": {
        "message": "Parity"
    },
    "sitlSerialTcpEnable": {
        "message": "Enable"
    },
    "sitlHelp": {
        "message": "SITL (Software in the loop) allows to run INAV completely in software on the PC without using a flight controller and simulate complete FPV flights. For this, INAV is compiled with a normal PC compiler. The sensors are replaced by data provided by a simulator.<br/>Currently supported are:<br/><ul><li><a href=\\"https://www.realflight.com\\" target=\\"_blank\\">RealFlight</a><br/></li><li><a href=\\"https://www.x-plane.com\\" target=\\"_blank\\">X-Plane</a></li></ul>"
    },
    "sitlProfilesHelp": {
        "message": "Profiles are saved locally. The profiles contain not only all data of this tab, but also the configuration file (\\"EEPROM\\") of INAV itself. <br><span style=\\"color: red\\">Note:</span><br>Standard profiles can't be overwriten. To save your changes, create a new profile. "
    },
    "sitlEnableSimulatorHelp": {
        "message": "If this option is deactivated, only UARTS (MSP/Configurator) can be used. Useful to configure INAV without having to start the simulator."
    },
    "sitlUseImuHelp": {
        "message": "Use IMU sensor data from the simulator instead of using attitude data from the simulator directly (Experimental, not recommended)."
    },
    "sitlIpHelp": {
        "message": "IP address of the computer on which the simulator is running. If the simulator is running on the same computer, leave it at \\"127.0.0.1"
    },
    "sitlPortHelp": {
        "message": "Port number of the interface of the simulator. Note: The RealFlight port is fixed and cannot be changed."
    },
    "sitlSerialReceiverHelp": {
        "message": "Use receiver (SBUS/CRSF/etc.) connected to host using USB-to-UART adapter or proxy Flight Controller."
    },
    "auxiliaryAcroEnabled": {
        "message": "ACRO"
    },
    "serialPortOpened": {
        "message": "MSP connection <span style=\\"color: #37a8db\\">successfully</span> opened with ID: $1"
    },
    "serialPortOpenFail": {
        "message": "<span style=\\"color: red\\">Failed</span> to open MSP connection"
    },
    "serialPortClosedOk": {
        "message": "MSP connection <span style=\\"color: #37a8db\\">successfully</span> closed"
    },
    "serialPortClosedFail": {
        "message": "<span style=\\"color: red\\">Failed</span> to close MSP connection"
    },
    "serialPortUnrecoverable": {
        "message": "Unrecoverable <span style=\\"color: red\\">failure</span> of serial connection, disconnecting...'"
    },
    "connectionConnected": {
        "message": "Connected to: $1"
    },
    "connectionBleType": {
        "message": "BLE device type: $1"
    },
    "connectionBleNotSupported": {
        "message": "<span style=\\"color: red\\">Connection error:</span> Firmware doesn't support BLE connections. Abort."
    },
    "connectionBleInterrupted": {
        "message": "The connection was unexpectedly interrupted."
    },
    "connectionBleError": {
        "message": "Error while opening BLE device: $1"
    },
    "connectionBleCliEnter": {
        "message": "Connection over BLE active, output might be slower than usual."
    },
    "connectionUdpTimeout": {
        "message": "UDP connection timed out."
    },
    "usbDeviceOpened": {
        "message": "USB device <span style=\\"color: #37a8db\\">successfully</span> opened"
    },
    "usbDeviceOpenFail": {
        "message": "<span style=\\"color: red\\">Failed</span> to open USB device!"
    },
    "usbDeviceClosed": {
        "message": "USB device <span style=\\"color: #37a8db\\">successfully</span> closed"
    },
    "usbDeviceCloseFail": {
        "message": "<span style=\\"color: red\\">Failed</span> to close USB device"
    },
    "usbDeviceUdevNotice": {
        "message": "Are <strong>udev rules</strong> installed correctly? See docs for instructions"
    },
    "stm32UsbDfuNotFound": {
        "message": "USB DFU not found"
    },
    "stm32RebootingToBootloader": {
        "message": "Initiating reboot to bootloader ..."
    },
    "stm32RebootingToBootloaderFailed": {
        "message": "Rebooting device to bootloader: FAILED"
    },
    "stm32TimedOut": {
        "message": "STM32 - timed out, programming: FAILED"
    },
    "stm32WrongResponse": {
        "message": "STM32 Communication failed, wrong response, expected: $1 (0x$2) received: $3 (0x$4)"
    },
    "stm32ContactingBootloader": {
        "message": "Contacting bootloader ..."
    },
    "stm32ContactingBootloaderFailed": {
        "message": "Communication with bootloader failed"
    },
    "stm32ResponseBootloaderFailed": {
        "message": "No response from the bootloader, programming: FAILED"
    },
    "stm32GlobalEraseExtended": {
        "message": "Executing global chip erase (via extended erase) ..."
    },
    "stm32LocalEraseExtended": {
        "message": "Executing local erase (via extended erase) ..."
    },
    "stm32GlobalErase": {
        "message": "Executing global chip erase ..."
    },
    "stm32LocalErase": {
        "message": "Executing local erase ..."
    },
    "stm32InvalidHex": {
        "message": "Invalid hex"
    },
    "stm32Erase": {
        "message": "Erasing ..."
    },
    "stm32Flashing": {
        "message": "Flashing ..."
    },
    "stm32Verifying": {
        "message": "Verifying ..."
    },
    "stm32ProgrammingSuccessful": {
        "message": "Programming: SUCCESSFUL"
    },
    "stm32ProgrammingFailed": {
        "message": "Programming: FAILED"
    },
    "stm32AddressLoadFailed": {
        "message": "Address load for option bytes sector failed. Very likely due to read protection."
    },
    "stm32AddressLoadSuccess": {
        "message": "Address load for option bytes sector succeeded."
    },
    "stm32AddressLoadUnknown": {
        "message": "Address load for option bytes sector failed with unknown error. Aborting."
    },
    "stm32NotReadProtected": {
        "message": "Read protection not active"
    },
    "stm32ReadProtected": {
        "message": "Board seems read protected. Unprotecting. Do not disconnect/unplug!"
    },
    "stm32UnprotectSuccessful": {
        "message": "Unprotect successful."
    },
    "stm32UnprotectUnplug": {
        "message": "ACTION REQUIRED: Unplug and re-connect flight controller in DFU mode to try flashing again!"
    },
    "stm32UnprotectFailed": {
        "message": "Failed to unprotect board"
    },
    "stm32UnprotectInitFailed": {
        "message": "Failed to initiate unprotect routine"
    },
    "noConfigurationReceived": {
        "message": "No configuration received within <span style=\\"color: red\\">10 seconds</span>, communication <span style=\\"color: red\\">failed</span>"
    },
    "firmwareVersionNotSupported": {
        "message": "This firmware version is <span style=\\"color: red\\">not supported</span>. This version of Configurator supports firmware from $1 to $2 (excluded)"
    },
    "firmwareVariantNotSupported": {
        "message": "This firmware variant is <span style=\\"color: red\\">not supported</span>. Please upgrade to INAV firmware. Use CLI for backup before flashing.  CLI backup/restore procedure is in the documention."
    },
    "tabSwitchConnectionRequired": {
        "message": "You need to <strong>connect</strong> before you can view any of the tabs."
    },
    "tabSwitchWaitForOperation": {
        "message": "You <span style=\\"color: red\\">can't</span> do this right now, please wait for current operation to finish ..."
    },
    "tabSwitchUpgradeRequired": {
        "message": "You need to <strong>upgrade</strong> your firmware before you can use the $1 tab."
    },
    "firmwareVersion": {
        "message": "Firmware Version: <strong>$1</strong>"
    },
    "apiVersionReceived": {
        "message": "MultiWii API version <span style=\\"color: #37a8db\\">received</span> - <strong>$1</strong>"
    },
    "uniqueDeviceIdReceived": {
        "message": "Unique device ID <span style=\\"color: #37a8db\\">received</span> - <strong>0x$1</strong>"
    },
    "boardInfoReceived": {
        "message": "Board: <strong>$1</strong>, version: <strong>$2</strong>"
    },
    "buildInfoReceived": {
        "message": "Running firmware released on: <strong>$1</strong>"
    },
    "fcInfoReceived": {
        "message": "Flight controller info, identifier: <strong>$1</strong>, version: <strong>$2</strong>"
    },
    "notifications_app_just_updated_to_version": {
        "message": "Application just updated to version: $1"
    },
    "notifications_click_here_to_start_app": {
        "message": "Click here to start the application"
    },
    "statusbar_port_utilization": {
        "message": "Port utilization:"
    },
    "statusbar_usage_download": {
        "message": "D: $1%"
    },
    "statusbar_usage_upload": {
        "message": "U: $1%"
    },
    "statusbar_packet_error": {
        "message": "Packet error:"
    },
    "statusbar_i2c_error": {
        "message": "I2C error:"
    },
    "statusbar_cycle_time": {
        "message": "Cycle Time:"
    },
    "statusbar_cpu_load": {
        "message": "CPU Load: $1%"
    },
    "statusbar_arming_flags": {
        "message": "Arming Flags:"
    },
    "dfu_connect_message": {
        "message": "Please use the Firmware Flasher to access DFU devices"
    },
    "dfu_erased_kilobytes": {
        "message": "Erased $1 kB of flash <span style=\\"color: #37a8db\\">successfully</span>"
    },
    "dfu_device_flash_info": {
        "message": "Detected device with total flash size $1 kiB"
    },
    "dfu_error_image_size": {
        "message": "<span style=\\"color: red; font-weight: bold\\">Error</span>: Supplied image is larger then flash available on the chip! Image: $1 kiB, limit = $2 kiB"
    },
    "eeprom_saved_ok": {
        "message": "EEPROM <span style=\\"color: #37a8db\\">saved</span>"
    },
    "defaultWelcomeIntro": {
        "message": "Welcome to <strong>INAV - Configurator</strong>, a utility designed to simplify updating, configuring and tuning of your flight controller."
    },
    "defaultWelcomeHead": {
        "message": "Firmware & drivers"
    },
    "defaultWelcomeHead2": {
        "message": "INAV Friends"
    },
    "defaultWelcomeText2": {
        "message": "INAV is supported by a great community of users, developers and companies. Here is a short list: <a href=\\"http://www.mateksys.com/\\" target=\\"_blank\\">Mateksys</a>, <a href=\\"https://www.speedybee.com/\\" target=\\"_blank\\">SpeedyBee</a>, <a href=\\"https://geprc.com/\\" target=\\"_blank\\">GEPRC</a>. "
    },
    "defaultWelcomeText": {
        "message": "The firmware source code can be downloaded from <a href=\\"https://github.com/iNavFlight\\" title=\\"www.github.com\\" target=\\"_blank\\">here</a><br />The newest binary firmware image is available <a href=\\"https://github.com/iNavFlight/inav/releases\\" title=\\"www.github.com\\" target=\\"_blank\\">here</a>.<br /><br />Latest <strong>STM USB VCP Drivers</strong> can be downloaded from <a href=\\"http://www.st.com/web/en/catalog/tools/PF257938\\" title=\\"http://www.st.com\\" target=\\"_blank\\">here</a><br />Latest <strong>Zadig</strong> for Windows DFU flashing can be downloaded from <a href=\\"http://zadig.akeo.ie/\\" title=\\"http://zadig.akeo.ie\\" target=\\"_blank\\">here</a><br />"
    },
    "defaultContributingHead": {
        "message": "Contributing"
    },
    "defaultContributingText": {
        "message": "If you would like to help make INAV even better you can help in many ways, including:<br /><ul><li>Answering other users questions on the forums and IRC.</li><li>Contributing code to the firmware and configurator - new features, fixes, improvements</li><li>Testing <a href=\\"https://github.com/iNavFlight/inav/pulls\\" target=\\"_blank\\">new features/fixes</a> and providing feedback.</li><li>Helping out with <a href=\\"https://github.com/iNavFlight/inav/issues\\" target=\\"_blank\\">issues and commenting on feature requests</a>.</li></ul>"
    },
    "defaultChangelogHead": {
        "message": "Configurator - Changelog"
    },
    "defaultButtonFirmwareFlasher": {
        "message": "Firmware Flasher"
    },
    "defaultDonateHead": {
        "message": "Open Source / Donation Notice"
    },
    "defaultDonateText": {
        "message": "This utility is fully <strong>open source</strong> and is available free of charge to all <strong>INAV</strong> users.<br />If you found the INAV or INAV Configurator useful, please consider <strong>supporting</strong> its development by donating."
    },
    "defaultSponsorsHead": {
        "message": "INAV is supported by"
    },
    "communityRCGroupsSupport": {
        "message": "RC Groups Support"
    },
    "communityDiscordServer": {
        "message": "Discord Server"
    },
    "communitySlackSupport": {
        "message": "Slack Support Live Chat"
    },
    "communityTelegramSupport": {
        "message": "Telegram Channel"
    },
    "communityFacebookSupport": {
        "message": "Facebook Group"
    },
    "initialSetupBackupAndRestoreApiVersion": {
        "message": "<span style=\\"color: red\\">Backup and restore functionality disabled.</span>  You have firmware with API version <span style=\\"color: red\\">$1</span>, backup and restore requires <span style=\\"color: #37a8db\\">$2</span>.  Please backup your settings via the CLI, see INAV documentation for procedure."
    },
    "initialSetupButtonCalibrateAccel": {
        "message": "Calibrate Accelerometer"
    },
    "initialSetupCalibrateAccelText": {
        "message": "6-point calibration of accelerometer. Go to wiki for iNav and follow Sensor Calibration for more infomation"
    },
    "initialSetupButtonCalibrateMag": {
        "message": "Calibrate Magnetometer"
    },
    "initialSetupCalibrateMagText": {
        "message": "Move multirotor at least <strong>360</strong> degrees on all axis of rotation, you have 30 seconds to perform this task"
    },
    "initialSetupButtonReset": {
        "message": "Reset to default settings"
    },
    "initialSetupResetText": {
        "message": ""
    },
    "initialSetupButtonBackup": {
        "message": "Backup"
    },
    "initialSetupButtonRestore": {
        "message": "Restore"
    },
    "initialSetupBackupRestoreText": {
        "message": "<strong>Backup</strong> your configuration in case of an accident, <strong>CLI</strong> settings are <span style=\\"color: red\\">not</span> included - See 'dump' cli command"
    },
    "initialSetupBackupSuccess": {
        "message": "Backup saved <span style=\\"color: #37a8db\\">successfully</span>"
    },
    "initialSetupRestoreSuccess": {
        "message": "Configuration restored <span style=\\"color: #37a8db\\">successfully</span>"
    },
    "initialSetupButtonResetZaxis": {
        "message": "Reset Z axis, offset: 0 deg"
    },
    "initialSetupButtonResetZaxisValue": {
        "message": "Reset Z axis, offset: $1 deg"
    },
    "initialSetupMixerHead": {
        "message": "Mixer Type"
    },
    "initialSetupThrottleHead": {
        "message": "Throttle Settings"
    },
    "initialSetupMinimum": {
        "message": "Minimum:"
    },
    "initialSetupMaximum": {
        "message": "Maximum:"
    },
    "initialSetupFailsafe": {
        "message": "Failsafe:"
    },
    "initialSetupMinCommand": {
        "message": "MinCommand:"
    },
    "initialSetupBatteryHead": {
        "message": "Battery"
    },
    "initialSetupMinCellV": {
        "message": "Min Cell Voltage:"
    },
    "initialSetupMaxCellV": {
        "message": "Max Cell Voltage:"
    },
    "initialSetupVoltageScale": {
        "message": "Voltage Scale:"
    },
    "initialSetupAccelTrimsHead": {
        "message": "Accelerometer trims"
    },
    "initialSetupPitch": {
        "message": "Pitch:"
    },
    "initialSetupRoll": {
        "message": "Roll:"
    },
    "initialSetupMagHead": {
        "message": "Magnetometer"
    },
    "initialSetupDeclination": {
        "message": "Declination:"
    },
    "initialSetupInfoHead": {
        "message": "Info"
    },
    "initialSetupBatteryVoltage": {
        "message": "Battery voltage:"
    },
    "initialSetupBatteryDetectedCells": {
        "message": "Battery detected cell count:"
    },
    "initialSetupBatteryDetectedCellsValue": {
        "message": "$1"
    },
    "initialSetupBatteryPercentage": {
        "message": "Battery left:"
    },
    "initialSetupBatteryPercentageValue": {
        "message": "$1 %"
    },
    "initialSetupBatteryRemainingCapacity": {
        "message": "Battery remaining capacity"
    },
    "initialSetupBatteryRemainingCapacityValue": {
        "message": "$1 $2"
    },
    "initialSetupBatteryFull": {
        "message": "Assume full battery on connect"
    },
    "initialSetupBatteryFullValue": {
        "message": "$1"
    },
    "initialSetupBatteryThresholds": {
        "message": "Battery use cap thresholds"
    },
    "initialSetupBatteryThresholdsValue": {
        "message": "$1"
    },
    "initialSetup_Wh_drawn": {
        "message": "Capacity drawn:"
    },
    "initialSetup_Wh_drawnValue": {
        "message": "$1 Wh"
    },
    "initialSetupBatteryVoltageValue": {
        "message": "$1 V"
    },
    "initialSetupDrawn": {
        "message": "Capacity drawn:"
    },
    "initialSetupCurrentDraw": {
        "message": "Current draw:"
    },
    "initialSetupPowerDraw": {
        "message": "Power draw:"
    },
    "initialSetupPowerDrawValue": {
        "message": "$1 W"
    },
    "initialSetupBatteryMahValue": {
        "message": "$1 mAh"
    },
    "initialSetupCurrentDrawValue": {
        "message": "$1 A"
    },
    "initialSetupRSSI": {
        "message": "RSSI:"
    },
    "initialSetupRSSIValue": {
        "message": "$1 %"
    },
    "initialSetupGPSHead": {
        "message": "GPS"
    },
    "initialSetupInstrumentsHead": {
        "message": "Instruments"
    },
    "initialSetupButtonSave": {
        "message": "Save"
    },
    "initialSetupModel": {
        "message": "Model: $1"
    },
    "initialSetupAttitude": {
        "message": "$1 deg"
    },
    "initialSetupAccelCalibStarted": {
        "message": "Accelerometer calibration started"
    },
    "initialSetupAccelCalibEnded": {
        "message": "Accelerometer calibration <span style=\\"color: #37a8db\\">finished</span>"
    },
    "initialSetupMagCalibStarted": {
        "message": "Magnetometer calibration started"
    },
    "initialSetupMagCalibEnded": {
        "message": "Magnetometer calibration <span style=\\"color: #37a8db\\">finished</span>"
    },
    "initialSetupOpflowCalibStarted": {
        "message": "Optic flow calibration started"
    },
    "initialSetupOpflowCalibEnded": {
        "message": "Optic flow calibration <span style=\\"color: #37a8db\\">finished</span>"
    },
    "initialSetupSettingsRestored": {
        "message": "Settings restored to <strong>default</strong>"
    },
    "initialSetupEepromSaved": {
        "message": "EEPROM <span style=\\"color: #37a8db\\">saved</span>: Setup"
    },
    "RX_PPM": {
        "message": "PPM RX input"
    },
    "RX_SERIAL": {
        "message": "Serial-based receiver (SPEKSAT, SBUS, SUMD)"
    },
    "RX_PWM": {
        "message": "PWM RX input (one wire per channel)"
    },
    "RX_MSP": {
        "message": "MSP RX input (control via MSP port)"
    },
    "RX_SPI": {
        "message": "RX SPI based receiver (NRF24L01, RFM22)"
    },
    "RX_NONE": {
        "message": "No receiver"
    },
    "featureVBAT": {
        "message": "Battery voltage monitoring"
    },
    "featureTX_PROF_SEL": {
        "message": "Profile selection with TX stick command"
    },
    "featureINFLIGHT_ACC_CAL": {
        "message": "In-flight level calibration"
    },
    "featureMOTOR_STOP": {
        "message": "Stop motors on low throttle"
    },
    "featureSERVO_TILT": {
        "message": "Servo gimbal"
    },
    "featureBAT_PROFILE_AUTOSWITCH": {
        "message": "Automatic battery profile selection"
    },
    "featureBAT_PROFILE_AUTOSWITCHTip": {
        "message": "Automatically select battery profile based on battery voltage when the battery is plugged in"
    },
    "featureTHR_VBAT_COMP": {
        "message": "Throttle voltage compensation"
    },
    "featureTHR_VBAT_COMPTip": {
        "message": "Automatically compensate for the voltage drop when the battery is discharging to keep the thrust constant relative to throttle"
    },
    "featureSOFTSERIAL": {
        "message": "Enable CPU based serial ports"
    },
    "featureSOFTSERIALTip": {
        "message": "Configure ports on the Ports tab after enabling."
    },
    "featureGPS": {
        "message": "GPS for navigation and telemetry"
    },
    "featureGPSTip": {
        "message": "Configure port scenario first"
    },
    "featureFAILSAFE": {
        "message": "Apply failsafe settings on RX signal loss"
    },
    "featureSONAR": {
        "message": "Sonar"
    },
    "featureTELEMETRY": {
        "message": "Telemetry output"
    },
    "featureCURRENT_METER": {
        "message": "Battery current monitoring"
    },
    "featureREVERSIBLE_MOTORS": {
        "message": "Reversible motors mode (for use with reversible ESCs)"
    },
    "featureRSSI_ADC": {
        "message": "Analog RSSI input"
    },
    "featureLED_STRIP": {
        "message": "Multi-color RGB LED strip support"
    },
    "featureDASHBOARD": {
        "message": "OLED Screen Display"
    },
    "featureONESHOT125": {
        "message": "ONESHOT ESC support"
    },
    "featureONESHOT125Tip": {
        "message": "Disconnect flight battery and remove props before enabling."
    },
    "featurePWM_OUTPUT_ENABLE": {
        "message": "Enable motor and servo output"
    },
    "featurePWM_OUTPUT_ENABLETip": {
        "message": "Enabling this option is required for INAV to send signals to ESC. It is a safety precaution that prevents servos from being damaged right after flashing flight controller."
    },
    "featureBLACKBOX": {
        "message": "Blackbox flight data recorder"
    },
    "featureBLACKBOXTip": {
        "message": "Configure via the BlackBox tab after enabling."
    },
    "onboardLoggingBlackbox": {
        "message": "Blackbox logging device"
    },
    "onboardLoggingBlackboxRate": {
        "message": "Portion of flight loop iterations to log (logging rate)"
    },
    "featureCHANNEL_FORWARDING": {
        "message": "Forward aux channels to servo outputs"
    },
    "featureSOFTSPI": {
        "message": "CPU based SPI"
    },
    "featurePWM_SERVO_DRIVER": {
        "message": "External PWM servo driver"
    },
    "featurePWM_SERVO_DRIVERTip": {
        "message": "Use external PCA9685 PWM driver to connect up to 16 servos to flight controller. PCA9685 has to be connected to enable this feature."
    },
    "featureRSSI_ADCTip": {
        "message": "RSSI is a measurement of signal strength and is very handy so you know when your aircraft is going out of range or if it is suffering RF interference."
    },
    "featureOSD": {
        "message": "OSD"
    },
    "featureAIRMODE": {
        "message": "Permanently enable AIRMODE"
    },
    "featureFW_LAUNCH": {
        "message": "Permanently enable Launch Mode for Fixed Wing"
    },
    "featureFW_AUTOTRIM": {
        "message": "Continuously trim servos on Fixed Wing"
    },
    "featureFW_AUTOTRIMTip": {
        "message": "When flying in a stabilized mode, continuously adjust the servo midpoints so that the airplane keeps flying straight when switching to manual mode. Requires GPS."
    },
    "featureDYNAMIC_FILTERS": {
        "message": "Dynamic Gyro Filters"
    },
    "featureDYNAMIC_FILTERSTip": {
        "message": "Use automatic FFT gyro analysis to setup notch filters to attenuate gyro noise. Should be enabled all the time!"
    },
    "configurationFeatureEnabled": {
        "message": "Enabled"
    },
    "configurationFeatureName": {
        "message": "Feature"
    },
    "configurationFeatureDescription": {
        "message": "Description"
    },
    "configurationMixer": {
        "message": "Mixer"
    },
    "configurationFeatures": {
        "message": "Other Features"
    },
    "configurationReceiver": {
        "message": "Receiver Mode"
    },
    "configurationRSSI": {
        "message": "RSSI (Signal Strength)"
    },
    "configurationEscFeatures": {
        "message": "ESC/Motor Features"
    },
    "serialrx_inverted": {
        "message": "Serial Port Inverted (comparing to protocol default)"
    },
    "serialrx_halfduplex": {
        "message": "Serial receiver half-duplex"
    },
    "serialrx_frSkyPitchRollLabel": {
        "message": "Use Pitch & Roll sensors in telemetry"
    },
    "serialrx_frSkyPitchRollHelp": {
        "message": "This sends pitch and roll angle telemetry sensors instead of the standard raw acellerometer data sensors. This should be turned <strong>on</strong> if using the INAV OpenTX/EdgeTX or ETHOS telemetry dashboard LUA scripts."
    },
    "serialrx_frSkyFuelUnitLabel": {
        "message": "SmartPort Fuel units"
    },
    "serialrx_frSkyFuelUnitHelp": {
        "message": "Select the data that you want sent to the <strong>fuel</strong> telemetry sensor."
    },
    "configurationFeaturesHelp": {
        "message": "<strong>Note:</strong> Not all combinations of features are valid.  When the flight controller firmware detects invalid feature combinations conflicting features will be disabled.<br /><strong>Note:</strong> Configure serial ports <span style=\\"color: red\\">before</span> enabling the features that will use the ports."
    },
    "configurationSerialRXHelp": {
        "message": "<strong>Note:</strong> Remember to configure a Serial Port (via Ports tab) for the serial receiver"
    },
    "configurationFrSkyOptions": {
        "message": "FrSky Options"
    },
    "configurationFrSkyOptions_HELP": {
        "message": "These options provide quick access to configure the SmartPort telemetry sensors to work with the OpenTX/EdgeTX and ETHOS telemetry LUA scripts. Please note that if you are using SBUS. You will need to set up SmartPort telemetry on a separate serial port."
    },
    "configurationSensorAlignmentMag": {
        "message": "MAG Alignment"
    },
    "configurationSensorAlignmentMagRoll": {
        "message": "Roll"
    },
    "configurationSensorAlignmentMagPitch": {
        "message": "Pitch"
    },
    "configurationSensorAlignmentMagYaw": {
        "message": "Yaw"
    },
    "configurationAccelTrims": {
        "message": "Accelerometer Trim"
    },
    "configurationAccelTrimRoll": {
        "message": "Accelerometer Roll Trim"
    },
    "configurationAccelTrimPitch": {
        "message": "Accelerometer Pitch Trim"
    },
    "configurationMagDeclination": {
        "message": "Magnetometer Declination [deg]"
    },
    "configurationAutoDisarmDelay": {
        "message": "Seconds until disarm due to low THR"
    },
    "configurationAutoDisarmDelayHelp": {
        "message": "Only used for stick arming (i.e. not using a switch)"
    },
    "configurationThrottleMinimum": {
        "message": "Minimum Throttle"
    },
    "configurationThrottleMid": {
        "message": "Middle Throttle [RC inputs center value]"
    },
    "configurationThrottleMaximum": {
        "message": "Maximum Throttle"
    },
    "configurationThrottleMinimumCommand": {
        "message": "Minimum Command"
    },
    "configurationVoltageCurrentSensor": {
        "message": "Voltage & Current Sensors"
    },
    "configurationBatteryCurrent": {
        "message": "Battery Current"
    },
    "configurationVoltageSource": {
        "message": "Voltage source to use for alarms and telemetry"
    },
    "configurationVoltageSourceHelp": {
        "message": "Raw voltage is the voltage read directly from the battery. Sag compensated voltage is the calculated voltage the battery should be at without load (simulates ideal battery and should remove false alarms provoked by high loads)"
    },
    "configurationBatteryCells": {
        "message": "Number of cells (0 = auto)"
    },
    "configurationBatteryCellsHelp": {
        "message": "Set this to the number of cells of your battery to disable automatic cell count detection or to make the automatic switching of battery profiles possible. 7S, 9S and 11S batteries cannot be autodetected."
    },
    "configurationBatteryCellDetectVoltage": {
        "message": "Maximum cell voltage for cell count detection"
    },
    "configurationBatteryCellDetectVoltageHelp": {
        "message": "Maximum cell voltage used for cell count autodetection. Should be higher than maximum cell voltage to take into account possible drift in measured voltage and keep cell count detection accurate."
    },
    "configurationBatteryMinimum": {
        "message": "Minimum Cell Voltage"
    },
    "configurationBatteryMaximum": {
        "message": "Maximum Cell Voltage"
    },
    "configurationBatteryWarning": {
        "message": "Warning Cell Voltage"
    },
    "configurationBatteryScale": {
        "message": "Voltage Scale"
    },
    "configurationBatteryVoltage": {
        "message": "Battery Voltage"
    },
    "configurationCurrentScale": {
        "message": "Current Meter Scale"
    },
    "configurationCurrentScaleHelp": {
        "message": "Scale the output voltage to milliamps [1/10th mV/A]"
    },
    "configurationCurrentOffset": {
        "message": "Offset in millivolt steps"
    },
    "configurationBatteryMultiwiiCurrent": {
        "message": "Enable support for legacy Multiwii MSP current output"
    },
    "configurationBatterySettings": {
        "message": "Battery Settings"
    },
    "configurationBatterySettingsHelp": {
        "message": "These settings apply to the currently selected battery profile "
    },
    "configurationBatteryCapacityValue": {
        "message": "Capacity"
    },
    "configurationBatteryCapacityWarning": {
        "message": "Warning Capacity (remaining %)"
    },
    "configurationBatteryCapacityCritical": {
        "message": "Critical Capacity (remaining %)"
    },
    "configurationBatteryCapacityUnit": {
        "message": "Battery Capacity Unit"
    },
    "configurationPowerLimits": {
        "message": "Power Limiting"
    },
    "configurationPowerLimitsHelp": {
        "message": "Limit battery current and power draw to protect your battery and ESCs. Set to 0 to disable. Units: dA (deci-amps) = A×10, dW (deci-watts) = W×10, ds (deci-seconds) = s×10."
    },
    "configurationPowerLimitsNote": {
        "message": "Protects battery from over-current by smoothly reducing throttle. Requires current sensor. Set continuous and burst limits per your battery specs."
    },
    "configurationLimitContCurrent": {
        "message": "Continuous Current Limit (dA)"
    },
    "configurationLimitContCurrentHelp": {
        "message": "Maximum sustained current draw in deci-amps (dA). Example: 500 = 50A. Set to 0 to disable current limiting."
    },
    "configurationLimitBurstCurrent": {
        "message": "Burst Current Limit (dA)"
    },
    "configurationLimitBurstCurrentHelp": {
        "message": "Higher current allowed for short bursts (punch-outs, climbs). Example: 750 = 75A. Should be >= continuous limit."
    },
    "configurationLimitBurstCurrentTime": {
        "message": "Burst Current Time (ds)"
    },
    "configurationLimitBurstCurrentTimeHelp": {
        "message": "Duration burst current is allowed in deci-seconds (ds). Example: 100 = 10 seconds. After this time, limit falls to continuous."
    },
    "configurationLimitBurstCurrentFalldownTime": {
        "message": "Burst Current Falldown Time (ds)"
    },
    "configurationLimitBurstCurrentFalldownTimeHelp": {
        "message": "Smooth ramp-down time from burst to continuous limit in deci-seconds (ds). Example: 20 = 2 seconds."
    },
    "configurationLimitContPower": {
        "message": "Continuous Power Limit (dW)"
    },
    "configurationLimitContPowerHelp": {
        "message": "Maximum sustained power draw in deci-watts (dW). Example: 8000 = 800W. Set to 0 to disable power limiting. Requires voltage measurement."
    },
    "configurationLimitBurstPower": {
        "message": "Burst Power Limit (dW)"
    },
    "configurationLimitBurstPowerHelp": {
        "message": "Higher power allowed for short bursts. Example: 10000 = 1000W. Should be >= continuous limit."
    },
    "configurationLimitBurstPowerTime": {
        "message": "Burst Power Time (ds)"
    },
    "configurationLimitBurstPowerTimeHelp": {
        "message": "Duration burst power is allowed in deci-seconds (ds). Example: 50 = 5 seconds."
    },
    "configurationLimitBurstPowerFalldownTime": {
        "message": "Burst Power Falldown Time (ds)"
    },
    "configurationLimitBurstPowerFalldownTimeHelp": {
        "message": "Smooth ramp-down time from burst to continuous power limit in deci-seconds (ds). Example: 10 = 1 second."
    },
    "configurationLaunch": {
        "message": "Fixed Wing Auto Launch Settings"
    },
    "configurationLaunchVelocity": {
        "message": "Threshold Velocity"
    },
    "configurationLaunchVelocityHelp": {
        "message": "Forward velocity threshold for swing-launch detection. Default: 300 [100-10000]"
    },
    "configurationLaunchAccel": {
        "message": "Threshold Acceleration"
    },
    "configurationLaunchAccelHelp": {
        "message": "Forward acceleration threshold for bungee launch or throw launch, 1G = 981 cm/s/s. Default: 1863 [1000-20000]"
    },
    "configurationLaunchMaxAngle": {
        "message": "Max Throw Angle"
    },
    "configurationLaunchMaxAngleHelp": {
        "message": "Max throw angle (pitch/roll combined) to consider launch successful. Set to 180 to disable completely. Default: 45 [5-180]"
    },
    "configurationLaunchDetectTime": {
        "message": "Detect Time"
    },
    "configurationLaunchDetectTimeHelp": {
        "message": "Time for which thresholds have to breached to consider launch happened. Default: 40 [10-1000]"
    },
    "configurationLaunchThr": {
        "message": "Launch Throttle"
    },
    "configurationLaunchThrHelp": {
        "message": "Launch throttle - throttle to be set during launch sequence. Default: 1700 [1000-2000]"
    },
    "configurationLaunchIdleThr": {
        "message": "Idle Throttle"
    },
    "configurationLaunchIdleThrHelp": {
        "message": "Idle throttle - throttle to be set before launch sequence is initiated. If set below minimum throttle it will force motor stop or at idle throttle (depending if the MOTOR_STOP is enabled). If set above minimum throttle it will force throttle to this value (if MOTOR_STOP is enabled it will be handled according to throttle stick position). Default: 1000 [1000-2000]"
    },
    "configurationLaunchIdleDelay": {
        "message": "Idle Throttle Delay"
    },
    "configurationLaunchIdleDelayHelp": {
        "message": "Set a time delay between raising the throttle for the launch, and the motor starting at idle throttle. Default: 0 [0-60000]"
    },
    "configurationWiggleWakeIdle": {
        "message": "Wiggle to Wake Idle"
    },
    "configurationWiggleWakeIdleHelp": {
        "message": "If enabled, this feature allows a yaw wiggle of the aircraft to wake up the motors from idle.<br />0: Disabled (default)<br />1: 1 wiggle - This setting has a higher detection point, for airplanes without a tail that can be moved easily<br />2: 2 wiggles - This setting has a lower detection point, but requires the repeated action. This is intended for larger models and airplanes with tails"
    },
    "configurationLaunchMotorDelay": {
        "message": "Motor Delay"
    },
    "configurationLaunchMotorDelayHelp": {
        "message": "Delay between detected launch and launch sequence start and throttling up. Default: 500 [0-5000]"
    },
    "configurationLaunchSpinupTime": {
        "message": "Motor Spinup Time"
    },
    "configurationLaunchSpinupTimeHelp": {
        "message": "Time to bring power from minimum throttle to nav_fw_launch_thr, to avoid big stress on ESC and large torque from propeller. Default: 100 [0-1000]"
    },
    "configurationLaunchMinTime": {
        "message": "Minimum Launch Time"
    },
    "configurationLaunchMinTimeHelp": {
        "message": "Allow launch mode to execute at least this time [ms] and ignore stick movements. Default: 0 [0-60000]"
    },
    "configurationLaunchTimeout": {
        "message": "Launch Timeout"
    },
    "configurationLaunchTimeoutHelp": {
        "message": "Maximum time for launch sequence to be executed. After this time LAUNCH mode will be turned off and regular flight mode will take over. Default: 5000 [0-60000]"
    },
    "configurationLaunchEndTime": {
        "message": "End Transition Time"
    },
    "configurationLaunchEndTimeHelp": {
        "message": "Smooth transition time at the end of the launch (ms). This is added to the Launch Timeout. Default: 2000 [0-5000]"
    },
    "configurationLaunchMaxAltitude": {
        "message": "Maximum Altitude"
    },
    "configurationLaunchMaxAltitudeHelp": {
        "message": "Altitude at which LAUNCH mode will be turned off and regular flight mode will take over. Default: 0 [0-60000]"
    },
    "configurationLaunchClimbAngle": {
        "message": "Climb Angle"
    },
    "configurationLaunchClimbAngleHelp": {
        "message": "Climb angle (attitude of model, not climb slope) for launch sequence (degrees), is also restrained by global max_angle_inclination_pit. Default: 18 [5-45]"
    },
    "configuration3d": {
        "message": "Reversible motors"
    },
    "configuration3dDeadbandLow": {
        "message": "Reversible Motors Deadband Low"
    },
    "configuration3dDeadbandHigh": {
        "message": "Reversible Motors Deadband High"
    },
    "configuration3dNeutral": {
        "message": "Reversible Motors Neutral"
    },
    "configuration3dDeadbandThrottle": {
        "message": "Reversible Motors Deadband Throttle"
    },
    "configurationSystem": {
        "message": "System configuration"
    },
    "configurationLoopTime": {
        "message": "Flight Controller Loop Time"
    },
    "configurationCalculatedCyclesSec": {
        "message": "Cycles/Sec (Hz)"
    },
    "configurationGPS": {
        "message": "Configuration"
    },
    "configurationGPSProtocol": {
        "message": "Protocol"
    },
    "configurationGPSUseGalileo": {
        "message": "Gps use Galileo Satellites (EU)"
    },
    "configurationGPSUseBeidou": {
        "message": "Gps use BeiDou Satellites (CN)"
    },
    "configurationGPSUseGlonass": {
        "message": "Gps use Glonass Satellites (RU)"
    },
    "gpsPresetMode": {
        "message": "GPS Configuration Preset"
    },
    "gpsPresetModeHelp": {
        "message": "Choose a preset optimized for your GPS module, or use Manual for custom configuration. Auto-detect will identify your GPS module if connected."
    },
    "gpsUpdateRate": {
        "message": "GPS Update Rate (Hz)"
    },
    "gpsUpdateRateHelp": {
        "message": "How often the GPS module sends position updates. Higher rates provide lower latency but may reduce accuracy with multiple constellations on M10 modules."
    },
    "gpsAutoDetectFailed": {
        "message": "Could not auto-detect GPS module. Please connect flight controller or select manual preset."
    },
    "gpsAutoDetectSuccess": {
        "message": "GPS module detected:"
    },
    "tzOffset": {
        "message": "Timezone Offset"
    },
    "tzOffsetHelp": {
        "message": "Time zone offset from UTC. This is applied to the GPS time for logging and time-stamping of Blackbox logs. (Default = 0 mins)"
    },
    "tzAutomaticDST": {
        "message": "Automatic Daylight Savings Time"
    },
    "tzAutomaticDSTHelp": {
        "message": "Automatically add Daylight Saving Time to the GPS time when needed or simply ignore it. Includes presets for EU and the USA - if you live outside these areas it is suggested to manage DST manually via tz_offset. (Default = Off)"
    },
    "configurationGPSBaudrate": {
        "message": "Baudrate"
    },
    "configurationGPSubxSbas": {
        "message": "Ground Assistance Type"
    },
    "receiverType": {
        "message": "Receiver type"
    },
    "configurationSerialRX": {
        "message": "Serial Receiver Provider"
    },
    "configurationSPIProtocol": {
        "message": "RX SPI protocol"
    },
    "configurationEepromSaved": {
        "message": "EEPROM <span style=\\"color: #37a8db\\">saved</span>: Configuration"
    },
    "configurationButtonSave": {
        "message": "Save and Reboot"
    },
    "configurationVTX": {
        "message": "VTX"
    },
    "configurationVTXBand": {
        "message": "Band"
    },
    "configurationNoBand": {
        "message": "None"
    },
    "configurationVTXNoBandHelp": {
        "message": "VTX frequency has been set manually. Selecting a band will overwrite the configured frequency."
    },
    "configurationVTXChannel": {
        "message": "Channel"
    },
    "configurationVTXPower": {
        "message": "Power Level"
    },
    "configurationVTXPowerHelp": {
        "message": "VTX power level. The exact power in mw (or dBm) will depend on the specific hardware. Check your VTX manual."
    },
    "configurationVTXLowerPowerDisarm": {
        "message": "Use low power while the craft is disarmed"
    },
    "configurationVTXLowerPowerDisarmHelp": {
        "message": "Enabling this option will make the VTX use its lowest power while the craft is disarmed. Use 'Until first arm' to make it use the lowest power only until you arm for the first time."
    },
    "configurationVTXLowPowerDisarmValue_0": {
        "message": "Disabled"
    },
    "configurationVTXLowPowerDisarmValue_1": {
        "message": "Always"
    },
    "configurationVTXLowPowerDisarmValue_2": {
        "message": "Until first arm"
    },
    "configurationGimbal": {
        "message": "Serial Gimbal"
    },
    "configurationGimbalSensitivity": {
        "message": "Gimbal sensitivity"
    },
    "configurationGimbalPanChannel": {
        "message": "Pan channel (yaw)"
    },
    "configurationGimbalTiltChannel": {
        "message": "Tilt channel (pitch)"
    },
    "configurationGimbalRollChannel": {
        "message": "Roll channel"
    },
    "configurationHeadtracker": {
        "message": "Headtracker"
    },
    "configurationHeadtrackerType": {
        "message": "Head tracker type"
    },
    "configurationHeadtrackerPanRatio": {
        "message": "Head tracker pan movement ratio"
    },
    "configurationHeadtrackerTiltRatio": {
        "message": "Head tracker tilt movement ratio"
    },
    "configurationHeadtrackerRollRatio": {
        "message": "Head tracker roll movement ratio"
    },
    "portsHelp": {
        "message": "<strong>Note:</strong> not all combinations are valid.  When the flight controller firmware detects this the serial port configuration will be reset."
    },
    "portsMSPWarning": {
        "message": "<strong>Caution:</strong><p>Putting MSP on more than two UART ports may interfere with USB communication. Consider removing MSP from a port where it is not needed.</p>"
    },
    "portsFirmwareUpgradeRequired": {
        "message": "Firmware upgrade <span style=\\"color: red\\">required</span>."
    },
    "portsButtonSave": {
        "message": "Save and Reboot"
    },
    "portsTelemetryDisabled": {
        "message": "Disabled"
    },
    "portsFunction_MSP": {
        "message": "MSP"
    },
    "portsFunction_GPS": {
        "message": "GPS"
    },
    "portsFunction_RANGEFINDER": {
        "message": "Rangefinder"
    },
    "portsFunction_OPFLOW": {
        "message": "Optic flow"
    },
    "portsFunction_ESC": {
        "message": "ESC output/telemetry"
    },
    "portsFunction_TELEMETRY_FRSKY": {
        "message": "FrSky"
    },
    "portsFunction_TELEMETRY_HOTT": {
        "message": "HoTT"
    },
    "portsFunction_TELEMETRY_LTM": {
        "message": "LTM"
    },
    "portsFunction_TELEMETRY_MAVLINK": {
        "message": "MAVLink"
    },
    "portsFunction_TELEMETRY_IBUS": {
        "message": "IBUS"
    },
    "portsFunction_GSM_SMS": {
        "message": "GSM SMS"
    },
    "portsFunction_TELEMETRY_MSP": {
        "message": "MSP"
    },
    "portsFunction_TELEMETRY_SMARTPORT": {
        "message": "SmartPort"
    },
    "portsFunction_SMARTPORT_MASTER": {
        "message": "SmartPort Master"
    },
    "portsFunction_RX_SERIAL": {
        "message": "Serial RX"
    },
    "portsFunction_BLACKBOX": {
        "message": "Blackbox"
    },
    "portsFunction_RUNCAM_DEVICE_CONTROL": {
        "message": "RunCam Device"
    },
    "portsFunction_TBS_SMARTAUDIO": {
        "message": "TBS SmartAudio"
    },
    "portsFunction_IRC_TRAMP": {
        "message": "IRC Tramp"
    },
    "portsFunction_VTX_FFPV": {
        "message": "FuriousFPV Vtx"
    },
    "portsFunction_FRSKY_OSD": {
        "message": "FrSky OSD"
    },
    "portsFunction_DJI_FPV": {
        "message": "DJI FPV VTX"
    },
    "portsFunction_MSP_DISPLAYPORT": {
        "message": "MSP DisplayPort"
    },
    "portsFunction_SBUS_OUTPUT": {
        "message": "SBus Output"
    },
    "portsFunction_GIMBAL": {
        "message": "Serial Gimbal"
    },
    "portsFunction_HEADTRACKER": {
        "message": "Serial Headtracker"
    },
    "pidTuning_Other": {
        "message": "Other"
    },
    "pidTuning_Limits": {
        "message": "Limits"
    },
    "pidTuning_HeadingHold_Rate": {
        "message": "Heading Hold Rate (°/s)"
    },
    "pidTuning_Max_Inclination_Angle": {
        "message": "Max Inclination Angle"
    },
    "pidTuning_Max_Roll": {
        "message": "Roll (°/10)"
    },
    "pidTuning_Max_Pitch": {
        "message": "Pitch (°/10)"
    },
    "pidTuning_ShowAllPIDs": {
        "message": "Show all PIDs"
    },
    "pidTuning_PIDmain": {
        "message": "Main PID Gains"
    },
    "pidTuning_PIDother": {
        "message": "Additional PID Gains"
    },
    "pidTuning_SelectNewDefaults": {
        "message": "Select New Defaults"
    },
    "pidTuning_ResetPIDController": {
        "message": "Reset PID Controller"
    },
    "pidTuning_PIDgains": {
        "message": "PID Gains"
    },
    "pidTuning_Name": {
        "message": "Name"
    },
    "pidTuning_Proportional": {
        "message": "Proportional"
    },
    "pidTuning_Integral": {
        "message": "Integral"
    },
    "pidTuning_Derivative": {
        "message": "Derivative"
    },
    "pidTuning_FeedForward": {
        "message": "FeedForward"
    },
    "pidTuning_ControlDerivative": {
        "message": "Control Derivative"
    },
    "pidTuning_Basic": {
        "message": "Basic/Acro"
    },
    "pidTuning_Level": {
        "message": "Angle/Horizon"
    },
    "pidTuning_Altitude": {
        "message": "Barometer & Sonar/Altitude"
    },
    "pidTuning_Mag": {
        "message": "Magnometer/Heading"
    },
    "pidTuning_GPS": {
        "message": "GPS Navigation"
    },
    "pidTuning_LevelP": {
        "message": "Strength"
    },
    "pidTuning_LevelI": {
        "message": "LPF cutoff (Hz)"
    },
    "pidTuning_LevelD": {
        "message": "Transition (Horizon)"
    },
    "pidTuning_LevelHelp": {
        "message": "The values below change the behaviour of the ANGLE and HORIZON flight modes. Different PID controllers handle the LEVEL values differently. Please check the documentation."
    },
    "pidTuning_RatesAndExpo": {
        "message": "Rates & Expo"
    },
    "pidTuning_Rates_Stabilized": {
        "message": "Stabilized Rates"
    },
    "pidTuning_Rates_Roll": {
        "message": "Roll (°/s)"
    },
    "pidTuning_Rates_Pitch": {
        "message": "Pitch (°/s)"
    },
    "pidTuning_Rates_Yaw": {
        "message": "Yaw (°/s)"
    },
    "pidTuning_Expo_Stabilized": {
        "message": "Stabilized Expo"
    },
    "pidTuning_Expo_Manual": {
        "message": "Manual Expo"
    },
    "pidTuning_Expo_RollPitch": {
        "message": "Roll & Pitch (%)"
    },
    "pidTuning_Expo_Yaw": {
        "message": "Yaw (%)"
    },
    "pidTuning_RateDynamics": {
        "message": "Rate Dynamics"
    },
    "pidTuning_RateDynamics_Sensitivity": {
        "message": "Sensitivity"
    },
    "pidTuning_RateDynamics_Correction": {
        "message": "Correction"
    },
    "pidTuning_RateDynamics_Weight": {
        "message": "Weight"
    },
    "pidTuning_RateDynamics_Center": {
        "message": "Center"
    },
    "pidTuning_RateDynamics_End": {
        "message": "End"
    },
    "pidTuning_RollPitchRate": {
        "message": "ROLL &amp; PITCH rate"
    },
    "pidTuning_RollRate": {
        "message": "ROLL rate"
    },
    "pidTuning_PitchRate": {
        "message": "PITCH rate"
    },
    "pidTuning_YawRate": {
        "message": "YAW rate"
    },
    "pidTuning_RollAndPitchExpo": {
        "message": "Roll & Pitch Expo"
    },
    "pidTuning_YawExpo": {
        "message": "Yaw Expo"
    },
    "pidTuning_MaxRollAngle": {
        "message": "Max. ROLL angle"
    },
    "pidTuning_MaxRollAngleHelp": {
        "message": "Maximum ROLL angle in ANGLE mode. This also constrains the maximum bank in navigation modes."
    },
    "pidTuning_MaxPitchAngle": {
        "message": "Max. PITCH angle"
    },
    "pidTuning_MaxPitchAngleHelp": {
        "message": "Maximum PITCH angle in ANGLE mode. This also constrains the maximum climb and dive in navigation modes."
    },
    "pidTuning_ManualRollRate": {
        "message": "Manual ROLL rate"
    },
    "pidTuning_ManualPitchRate": {
        "message": "Manual PITCH rate"
    },
    "pidTuning_ManualYawRate": {
        "message": "Manual YAW rate"
    },
    "pidTuning_magHoldYawRate": {
        "message": "Heading Hold rate limit"
    },
    "pidTuning_MagHoldYawRateHelp": {
        "message": "Maximum YAW rotation rate that MagHold controller can request from UAV. Used only when MagHold mode is enabled, during RTH and WAYPOINT navigation. Values below 30dps gives nice \\"cinematic\\" turns"
    },
    "pidTuning_Filters": {
        "message": "Filters"
    },
    "pidTuning_mainFilters": {
        "message": "Gyro filters"
    },
    "pidTuning_advancedFilters": {
        "message": "Advanced gyro filters"
    },
    "pidTuning_gyro_main_lpf_hz": {
        "message": "Main gyro filter cutoff frequency"
    },
    "pidTuning_gyro_main_lpf_hz_help": {
        "message": "Higher values offer lower delay but more noise. Lower values offer less noise, but more dalay on the gyro processing"
    },
    "pidTuning_MatrixFilterMinFrequency": {
        "message": "Matrix Filter Min Frequency"
    },
    "pidTuning_MatrixFilterMinFrequencyHelp": {
        "message": "Minimum frequency for the Matrix Filter. Value should depends on propeller size. 150Hz work fine with 5&quot; and smaller. For 7&quot; and above lower even below 100Hz."
    },
    "pidTuning_MatrixFilterQFactor": {
        "message": "Matrix Filter Q Factor"
    },
    "pidTuning_MatrixFilterQFactorHelp": {
        "message": "The higher value, the higher selectivity of the Matrix Filter. Values between 150 and 300 are recommended."
    },
    "pidTuning_UnicornFilterQFactor": {
        "message": "Unicorn Filter Q Factor"
    },
    "pidTuning_dtermFilters": {
        "message": "D-term filters"
    },
    "pidTuning_dtermLpfCutoffFrequency": {
        "message": "D-term LPF cutoff frequency"
    },
    "pidTuning_dtermLpfCutoffFrequencyHelp": {
        "message": "Lowpass cutoff filter for Dterm for all PID controllers"
    },
    "pidTuning_rpmFilters": {
        "message": "Gyro RPM filters"
    },
    "pidTuning_rpm_gyro_filter_enabled": {
        "message": "Gyro RPM filter (requires ESC telemetry)"
    },
    "pidTuning_rpm_gyro_min_hz": {
        "message": "Gyro RPM filter min. frequency"
    },
    "pidTuning_Mechanics": {
        "message": "Mechanics"
    },
    "pidTuning_ITermMechanics": {
        "message": "I-term Mechanics"
    },
    "pidTuning_itermRelaxCutoff": {
        "message": "I-term Relax Cutoff Frequency"
    },
    "pidTuning_itermRelaxCutoffHelp": {
        "message": "Lower values open a longer time window for Iterm Relax to work on and stronger Iterm suppression. Higher values shortens the time windows and reduces suppression."
    },
    "pidTuning_antigravityGain": {
        "message": "Antigravity Gain"
    },
    "pidTuning_antigravityAccelerator": {
        "message": "Antigravity Accelerator"
    },
    "pidTuning_antigravityCutoff": {
        "message": "Antigravity Cutoff Frequency"
    },
    "pidTuning_itermBankAngleFreeze": {
        "message": "Yaw Iterm freeze bank angle"
    },
    "pidTuning_itermBankAngleFreezeHelp": {
        "message": "Freeze yaw Iterm when plane is banked more than this many degrees. This helps to stop the rudder from counteracting turn. 0 disables this feature. Applies only to fixed wing aircraft."
    },
    "pidTuning_dTermMechanics": {
        "message": "D-term Mechanics"
    },
    "pidTuning_d_boost_min": {
        "message": "D-Boost Min. Scale"
    },
    "pidTuning_d_boost_min_help": {
        "message": "Defines the max allowed Dterm attenuation during stick acceleration phase. Value 1.0 mean Dterm is not attenuate. 0.5 mean it's allowed to shrink by half. Lower values result in faster response during fast stick movement."
    },
    "pidTuning_d_boost_max": {
        "message": "D-Boost Max. Scale"
    },
    "pidTuning_d_boost_max_help": {
        "message": "Defines the maximum Dterm boost when maximum angular acceleration is reached. 1.0 means D-Boost is disabled, 2.0 means Dterm is allowed to grow by 100%. Values between 1.5 and 1.7 are usually the sweet spot."
    },
    "pidTuning_d_boost_max_at_acceleration": {
        "message": "Top D-Boost at acceleration [dps^2]"
    },
    "pidTuning_d_boost_max_at_acceleration_help": {
        "message": "D-Boost is fully active when angular acceleration (either detected by gyro or rate target) reached given acceleration. Between 0 and this value, D-Boost factor is scaled lineary"
    },
    "pidTuning_d_boost_gyro_delta_lpf_hz": {
        "message": "D-Boost gyro LPF"
    },
    "pidTuning_d_boost_gyro_delta_lpf_hz_help": {
        "message": "Should be set to the frequency of propeller wash oscillations. 5-inch quads work best at around 80Hz, 7-inch quads at around 50Hz"
    },
    "pidTuning_tpaMechanics": {
        "message": "Thrust PID Attenuation"
    },
    "pidTuning_TPA": {
        "message": "Thrust PID Attenuation (TPA)"
    },
    "pidTuning_TPABreakPoint": {
        "message": "TPA Breakpoint"
    },
    "pidTuning_FW_TPATimeConstant": {
        "message": "Fixed Wing TPA Time Constant"
    },
    "pidTuning_FW_TPATimeConstantHelp": {
        "message": "TPA smoothing and delay time constant to reflect non-instant speed/throttle response of the plane."
    },
    "pidTuning_fwLevelTrimMechanics": {
        "message": "Fixed Wing Mechanics"
    },
    "pidTuning_fw_level_pitch_trim": {
        "message": "Level Trim [deg]"
    },
    "pidTuning_fw_level_pitch_trim_help": {
        "message": "Pitch trim for self-leveling flight modes. In degrees. +5 means airplane nose should be raised 5 deg from level"
    },
    "pidTuning_ButtonSave": {
        "message": "Save"
    },
    "pidTuning_ButtonRefresh": {
        "message": "Refresh"
    },
    "pidTuning_ProfileHead": {
        "message": "Profile"
    },
    "pidTuning_LoadedProfile": {
        "message": "Loaded Profile: <strong style=\\"color: #37a8db\\">$1</strong>"
    },
    "pidTuning_Manual_Rates": {
        "message": "Manual Rates"
    },
    "pidTuning_Manual_Roll": {
        "message": "Roll (%)"
    },
    "pidTuning_Manual_Pitch": {
        "message": "Pitch (%)"
    },
    "pidTuning_Manual_Yaw": {
        "message": "Yaw (%)"
    },
    "pidTuning_gyro_dyn_lpf_min_hz": {
        "message": "Dynamic gyro LPF min. cutoff"
    },
    "pidTuning_gyro_dyn_lpf_max_hz": {
        "message": "Dynamic gyro LPF max. cutoff"
    },
    "pidTuning_gyro_dyn_lpf_curve_expo": {
        "message": "Dynamic gyro LPF curve expo"
    },
    "pidTuning_gyro_dyn_lpf_min_hz_help": {
        "message": "Defines the gyro LPF cutoff frequency at minimum throttle. When throttle is increased, LPF cutoff frequency is increased as well, up to the maximum cutoff frequency."
    },
    "pidTuning_gyro_dyn_lpf_max_hz_help": {
        "message": "Defines the gyro LPF cutoff frequency at maximum throttle. When throttle is decreased, LPF cutoff frequency is decreased as well, down to the minimum cutoff frequency."
    },
    "loadedMixerProfile": {
        "message": "Loaded Mixer Profile: <strong style=\\"color: #37a8db\\">$1</strong>, Check modes tab: MIXER PROFILE 2 if you don't see the changes"
    },
    "loadedBatteryProfile": {
        "message": "Loaded Battery Profile: <strong style=\\"color: #37a8db\\">$1</strong>"
    },
    "setControlProfile": {
        "message": "Set Control Profile: <strong style=\\"color: #37a8db\\">$1</strong>"
    },
    "setMixerProfile": {
        "message": "Setting Mixer Profile: <strong style=\\"color: #37a8db\\">$1</strong>"
    },
    "setBatteryProfile": {
        "message": "Setting Battery Profile: <strong style=\\"color: #37a8db\\">$1</strong>"
    },
    "pidTuningDataRefreshed": {
        "message": "PID data <strong>refreshed</strong>"
    },
    "pidTuningEepromSaved": {
        "message": "EEPROM <span style=\\"color: #37a8db\\">saved</span>: PID Tuning"
    },
    "receiverHelp": {
        "message": "Please read receiver chapter of the documentation.  Configure serial port (if required), receiver mode (serial/ppm/pwm), provider (for serial receivers), bind receiver, set channel map, configure channel endpoints/range on TX so that all channels go from ~1000 to ~2000.  Set midpoint (default 1500), trim channels to 1500, configure stick deadband, verify behaviour when TX is off or out of range. Make sure that the channel values all increase when you push the sticks up and to the right. If not, reverse the channel in the TX. Do not apply any other mixing in the TX.<br /><span style=\\"color: red\\">IMPORTANT:</span> Before flying read failsafe chapter of documentation and configure failsafe."
    },
    "receiverThrottleMid": {
        "message": "Throttle MID"
    },
    "receiverThrottleExpo": {
        "message": "Throttle EXPO"
    },
    "receiverRcRate": {
        "message": "RC Rate"
    },
    "receiverDeadband": {
        "message": "RC Deadband"
    },
    "receiverHelpDeadband": {
        "message": "These are values (in us) by how much RC input can be different before it's considered valid. For transmitters with jitter on outputs, this value can be increased if rc inputs twitch while idle."
    },
    "receiverHelpYawDeadband": {
        "message": "These are values (in us) by how much RC input can be different before it's considered valid. For transmitters with jitter on outputs, this value can be increased if rc inputs twitch while idle. <strong>This setting is for Yaw only.</strong>"
    },
    "receiverYawDeadband": {
        "message": "Yaw Deadband"
    },
    "receiverRcExpo": {
        "message": "RC Expo"
    },
    "receiverRcYawExpo": {
        "message": "RC Yaw Expo"
    },
    "receiverManualRcExpo": {
        "message": "Manual RC Expo"
    },
    "receiverManualRcYawExpo": {
        "message": "Manual RC Yaw Expo"
    },
    "receiverChannelMap": {
        "message": "Channel Map"
    },
    "receiverChannelMapTitle": {
        "message": "Channel mapping order: A=Aileron, E=Elevator, T=Throttle, R=Rudder. Click to edit."
    },
    "receiverRssiChannel": {
        "message": "RSSI Channel"
    },
    "receiverRssiSource": {
        "message": "RSSI Source"
    },
    "receiverRefreshRateTitle": {
        "message": "Graph refresh rate"
    },
    "receiverButtonSave": {
        "message": "Save"
    },
    "receiverButtonRefresh": {
        "message": "Refresh"
    },
    "receiverButtonSticks": {
        "message": "Control sticks"
    },
    "receiverDataRefreshed": {
        "message": "RC Tuning data <strong>refreshed</strong>"
    },
    "receiverEepromSaved": {
        "message": "EEPROM <span style=\\"color: #37a8db\\">saved</span>: Receiver"
    },
    "auxiliaryHelp": {
        "message": "Use ranges to define the switches on your transmitter and corresponding mode assignments.  A receiver channel that gives a reading between a range min/max will activate the mode.  Remember to save your settings using the Save button."
    },
    "auxiliaryToggleUnused": {
        "message": "Hide unused modes"
    },
    "auxiliaryMin": {
        "message": "Min"
    },
    "auxiliaryMax": {
        "message": "Max"
    },
    "auxiliaryAddRange": {
        "message": "Add Range"
    },
    "auxiliaryAutoChannelSelect": {
        "message": "AUTO"
    },
    "auxiliaryButtonSave": {
        "message": "Save"
    },
    "auxiliaryEepromSaved": {
        "message": "EEPROM <span style=\\"color: #37a8db\\">saved</span>"
    },
    "eepromSaved": {
        "message": "EEPROM <span style=\\"color: #37a8db\\">saved</span>"
    },
    "adjustmentsHelp": {
        "message": "Configure adjustment switches.  See the 'in-flight adjustments' section of the manual for details.  The changes that adjustment functions make are not saved automatically.  There are 4 slots.  Each switch used to concurrently make adjustments requires exclusive use of a slot."
    },
    "adjustmentsExamples": {
        "message": "Examples"
    },
    "adjustmentsExample1": {
        "message": "Use Slot 1 and a 3POS switch on CH5 to select between Pitch/Roll P, I and D and another 3POS switch on CH6 to increase or decrease the value when held up or down."
    },
    "adjustmentsExample2": {
        "message": "Use Slot 2 and a 3POS switch on CH8 to select enable Rate Profile Selection via the same 3POS switch on the same channel."
    },
    "adjustmentsColumnEnable": {
        "message": "If enabled"
    },
    "adjustmentsColumnUsingSlot": {
        "message": "using slot"
    },
    "adjustmentsColumnWhenChannel": {
        "message": "when channel"
    },
    "adjustmentsColumnIsInRange": {
        "message": "is in range"
    },
    "adjustmentsColumnThenApplyFunction": {
        "message": "then apply"
    },
    "adjustmentsColumnViaChannel": {
        "message": "via channel"
    },
    "adjustmentsSlot0": {
        "message": "Slot 1"
    },
    "adjustmentsSlot1": {
        "message": "Slot 2"
    },
    "adjustmentsSlot2": {
        "message": "Slot 3"
    },
    "adjustmentsSlot3": {
        "message": "Slot 4"
    },
    "adjustmentsMin": {
        "message": "Min"
    },
    "adjustmentsMax": {
        "message": "Max"
    },
    "adjustmentsGroupRates": {
        "message": "Rates & Expo"
    },
    "adjustmentsGroupPIDTuning": {
        "message": "PID Tuning"
    },
    "adjustmentsGroupNavigationFlight": {
        "message": "Navigation and Flight"
    },
    "adjustmentsGroupMisc": {
        "message": "Misc"
    },
    "adjustmentsFunction0": {
        "message": "No changes"
    },
    "adjustmentsFunction1": {
        "message": "RC Rate Adjustment"
    },
    "adjustmentsFunction2": {
        "message": "RC Expo Adjustment"
    },
    "adjustmentsFunction3": {
        "message": "Throttle Expo Adjustment"
    },
    "adjustmentsFunction4": {
        "message": "Pitch & Roll Rate Adjustment"
    },
    "adjustmentsFunction5": {
        "message": "Yaw Rate Adjustment"
    },
    "adjustmentsFunction6": {
        "message": "Pitch & Roll P Adjustment"
    },
    "adjustmentsFunction7": {
        "message": "Pitch & Roll I Adjustment"
    },
    "adjustmentsFunction8": {
        "message": "Pitch & Roll D"
    },
    "adjustmentsFunction9": {
        "message": "Pitch & Roll CD/FF Adjustment"
    },
    "adjustmentsFunction10": {
        "message": "Pitch P Adjustment"
    },
    "adjustmentsFunction11": {
        "message": "Pitch I Adjustment"
    },
    "adjustmentsFunction12": {
        "message": "Pitch D Adjustment"
    },
    "adjustmentsFunction13": {
        "message": "Pitch CD/FF Adjustment"
    },
    "adjustmentsFunction14": {
        "message": "Roll P Adjustment"
    },
    "adjustmentsFunction15": {
        "message": "Roll I Adjustment"
    },
    "adjustmentsFunction16": {
        "message": "Roll D Adjustment"
    },
    "adjustmentsFunction17": {
        "message": "Roll CD/FF Adjustment"
    },
    "adjustmentsFunction18": {
        "message": "Yaw P Adjustment"
    },
    "adjustmentsFunction19": {
        "message": "Yaw I Adjustment"
    },
    "adjustmentsFunction20": {
        "message": "Yaw D Adjustment"
    },
    "adjustmentsFunction21": {
        "message": "Yaw CD/FF Adjustment"
    },
    "adjustmentsFunction22": {
        "message": "Rate Profile Selection"
    },
    "adjustmentsFunction23": {
        "message": "Pitch Rate"
    },
    "adjustmentsFunction24": {
        "message": "Roll Rate"
    },
    "adjustmentsFunction25": {
        "message": "RC Yaw Expo Adjustment"
    },
    "adjustmentsFunction26": {
        "message": "Manual RC Expo Adjustment"
    },
    "adjustmentsFunction27": {
        "message": "Manual RC Yaw Expo Adjustment"
    },
    "adjustmentsFunction28": {
        "message": "Manual Pitch & Roll Rate Adjustment"
    },
    "adjustmentsFunction29": {
        "message": "Manual Roll Rate Adjustment"
    },
    "adjustmentsFunction30": {
        "message": "Manual Pitch Rate Adjustment"
    },
    "adjustmentsFunction31": {
        "message": "Manual Yaw Rate Adjustment"
    },
    "adjustmentsFunction32": {
        "message": "Navigation FW Cruise Throttle Adjustment"
    },
    "adjustmentsFunction33": {
        "message": "Navigation FW Pitch To Throttle Adjustment"
    },
    "adjustmentsFunction34": {
        "message": "Board Roll Alignment Adjustment"
    },
    "adjustmentsFunction35": {
        "message": "Board Pitch Alignment Adjustment"
    },
    "adjustmentsFunction36": {
        "message": "Level P Adjustment"
    },
    "adjustmentsFunction37": {
        "message": "Level I Adjustment"
    },
    "adjustmentsFunction38": {
        "message": "Level D Adjustment"
    },
    "adjustmentsFunction39": {
        "message": "Pos XY P Adjustment"
    },
    "adjustmentsFunction40": {
        "message": "Pos XY I Adjustment"
    },
    "adjustmentsFunction41": {
        "message": "Pos XY D Adjustment"
    },
    "adjustmentsFunction42": {
        "message": "Pos Z P Adjustment"
    },
    "adjustmentsFunction43": {
        "message": "Pos Z I Adjustment"
    },
    "adjustmentsFunction44": {
        "message": "Pos Z D Adjustment"
    },
    "adjustmentsFunction45": {
        "message": "Heading P Adjustment"
    },
    "adjustmentsFunction46": {
        "message": "Vel XY P Adjustment"
    },
    "adjustmentsFunction47": {
        "message": "Vel XY I Adjustment"
    },
    "adjustmentsFunction48": {
        "message": "Vel XY D Adjustment"
    },
    "adjustmentsFunction49": {
        "message": "Vel Z P Adjustment"
    },
    "adjustmentsFunction50": {
        "message": "Vel Z I Adjustment"
    },
    "adjustmentsFunction51": {
        "message": "Vel Z D Adjustment"
    },
    "adjustmentsFunction52": {
        "message": "FW min thr down pitch angle Adjustment"
    },
    "adjustmentsFunction53": {
        "message": "VTX power level Adjustment"
    },
    "adjustmentsFunction54": {
        "message": "Thrust PID Attenuation (TPA) Adjustment"
    },
    "adjustmentsFunction55": {
        "message": "TPA Breakpoint Adjustment"
    },
    "adjustmentsFunction56": {
        "message": "Control Smoothness Adjustment"
    },
    "adjustmentsFunction57": {
        "message": "Fixed Wing TPA Time Constant"
    },
    "adjustmentsFunction58": {
        "message": "Fixed Wing Level Trim"
    },
    "adjustmentsFunction59": {
        "message": "Multi Mission Index Adjustment"
    },
    "adjustmentsFunction60": {
        "message": "Fixed Wing Alt Control Response Adjustment"
    },
    "adjustmentsSave": {
        "message": "Save"
    },
    "adjustmentsEepromSaved": {
        "message": "EEPROM <span style=\\"color: #37a8db\\">saved</span>: Adjustments"
    },
    "programmingEepromSaved": {
        "message": "EEPROM <span style=\\"color: #37a8db\\">saved</span>: Programming"
    },
    "servosChangeDirection": {
        "message": "Change Direction in TX To Match"
    },
    "servosName": {
        "message": "Name"
    },
    "servosMid": {
        "message": "MID"
    },
    "servosMin": {
        "message": "MIN"
    },
    "servosMax": {
        "message": "MAX"
    },
    "servosReverse": {
        "message": "Reverse"
    },
    "servoOutput": {
        "message": "Output"
    },
    "servosRate": {
        "message": "Rate (%)"
    },
    "servosLiveMode": {
        "message": "Enable Live mode"
    },
    "servosButtonSave": {
        "message": "Save"
    },
    "servosNormal": {
        "message": "Normal"
    },
    "servoEmptyTableInfo": {
        "message": "No servos configured. Add them using the Mixer tab."
    },
    "servosEepromSave": {
        "message": "EEPROM <span style=\\"color: #37a8db\\">saved</span>"
    },
    "mixerSaved": {
        "message": "Mixer <span style=\\"color: #37a8db\\">saved</span>"
    },
    "mixerWizard": {
        "message": "Motor Mixer Wizard"
    },
    "mixerWizardInfo": {
        "message": "<ol><li>Remove propellers</li><li>Connect LiPo and use Outputs Tab to test all motors</li><li>Note the position of each motor (motor #1 - Left Top and so on)</li><li>Fill the table below</li></ol>"
    },
    "gpsHead": {
        "message": "Position"
    },
    "gpsStatHead": {
        "message": "Statistics"
    },
    "gpsMapHead": {
        "message": "Current GPS location"
    },
    "gpsMapMessage1": {
        "message": "Please check your internet connection"
    },
    "gpsMapMessage2": {
        "message": "Waiting for GPS 3D fix…"
    },
    "gpsFix": {
        "message": "Fix type:"
    },
    "gpsFix2D": {
        "message": "<span class=\\"fix2d\\">2D</span>"
    },
    "gpsFix3D": {
        "message": "<span class=\\"fix3d\\">3D</span>"
    },
    "gpsFixNone": {
        "message": "<span class=\\"fixnone\\">None</span>"
    },
    "gpsAltitude": {
        "message": "Altitude:"
    },
    "gpsLat": {
        "message": "Latitude:"
    },
    "gpsLon": {
        "message": "Longitude:"
    },
    "gpsSpeed": {
        "message": "Speed:"
    },
    "gpsSats": {
        "message": "Sats:"
    },
    "gpsDistToHome": {
        "message": "Dist to Home:"
    },
    "gpsHDOP": {
        "message": "HDOP:"
    },
    "gpsTotalMessages": {
        "message": "Total messages:"
    },
    "gpsMessageRate": {
        "message": "Update time:"
    },
    "gpsErrors": {
        "message": "Errors:"
    },
    "gpsTimeouts": {
        "message": "Timeouts:"
    },
    "gpsEPH": {
        "message": "EPH:"
    },
    "gpsEPV": {
        "message": "EPV:"
    },
    "gpsSignalStr": {
        "message": "Signal Strength"
    },
    "gpsPort": {
        "message": "Serial Port"
    },
    "gpsBaud": {
        "message": "Baud Rate"
    },
    "magnetometerHead": {
        "message": "Alignment Tool"
    },
    "magnetometerHelp": {
        "message": "1. Adjust Flight Controller orientation to match physical orientation on the aircraft <u>according to \\"direction\\" arrow on the Flight Controller</u>.<br/>2. Adjust magnetometer model, or magnetometer chip, or magnetometer axes orientation to match physical orientation on the aircraft.<br/><strong>Note:</strong> Magnetometer orientation preset (align_mag) is relative to FC. Make sure to align FC first (align_board_pitch, align_board_roll, align_board_yaw).<br/>If preset is not used (orientation is set using align_mag_roll, align_mag_pitch and align_mag_yaw), then magnetometer orientation is independent."
    },
    "magnetometerOrientationPreset": {
        "message": "Orientation preset (align_mag). Relative to FC orientation"
    },
    "boardInfo": {
        "message": "1. Select Flight Controller alignment<br>(align_board_roll, align_board_pitch, align_board_yaw)"
    },
    "magnetometerInfo": {
        "message": "2. Select a preset (align_mag) or create a custom configuration using the sliders<br>(align_mag_roll, align_mag_pitch, align_mag_yaw)"
    },
    "magnetometerElementToShow": {
        "message": "Element to show: Magnetometer model or chip or axes"
    },
    "magnetometerAxes": {
        "message": "XYZ (Magnetometer Axes)"
    },
    "axisTableTitleAxis": {
        "message": "Axis"
    },
    "axisTableTitleValue": {
        "message": "Value [degree]"
    },
    "configurationSensorMagPreset": {
        "message": "Orientation is set by: PRESET (align_mag)"
    },
    "configurationSensorMagAngles": {
        "message": "Orientation is set by: ANGLES (align_mag_roll, align_mag_pitch ,align_mag_yaw)"
    },
    "configurationMagnetometerHelp": {
        "message": "<strong>Note:</strong> Remember to configure a Serial Port (via Ports tab) when using the Magnetometer feature."
    },
    "magnetometerStatHead": {
        "message": "Mag Statistics"
    },
    "tabMAGNETOMETER": {
        "message": "Alignment Tool"
    },
    "motors": {
        "message": "Motors"
    },
    "servos": {
        "message": "Servos"
    },
    "motorsMaster": {
        "message": "Master"
    },
    "motorsNotice": {
        "message": "<strong>Motor Test Mode Notice:</strong><br />Moving the sliders will cause the motors to <strong>spin up</strong>.<br />In order to prevent injury <strong style=\\"color: red\\">remove ALL propellers</strong> before using this feature.<br />"
    },
    "motorsEnableControl": {
        "message": "I understand the risks, propellers are removed - Enable motor control."
    },
    "sensorsInfo": {
        "message": "Keep in mind that using fast update periods and rendering multiple graphs at the same time is resource heavy and will burn your battery quicker if you use a laptop.<br />We recommend to only render graphs for sensors you are interested in while using reasonable update periods."
    },
    "sensorsRefresh": {
        "message": "Refresh:"
    },
    "sensorsScale": {
        "message": "Scale:"
    },
    "cliInfo": {
        "message": "<strong>Note</strong>: Leaving CLI tab or pressing Disconnect will <strong>automatically</strong> send \\"<strong>exit</strong>\\" to the board.  With the latest firmware this will make the controller <span style=\\"color: red\\">restart</span> and unsaved changes will be <span style=\\"color: red\\">lost</span>."
    },
    "cliInputPlaceholder": {
        "message": "Write your command here"
    },
    "cliEnter": {
        "message": "CLI mode detected"
    },
    "cliReboot": {
        "message": "CLI reboot detected"
    },
    "cliDocsBtn": {
        "message": "CLI Command Docs"
    },
    "cliSaveToFileBtn": {
        "message": "Save to File"
    },
    "cliSaveToFileFailed": {
        "message": "Failed to save CLI output to file"
    },
    "cliSaveToFileAborted": {
        "message": "Saving CLI output to file was aborted"
    },
    "cliSaveToFileCompleted": {
        "message": "CLI output successfully saved to file"
    },
    "cliClearOutputHistoryBtn": {
        "message": "Clear Screen"
    },
    "cliCopyToClipboardBtn": {
        "message": "Copy to Clipboard"
    },
    "cliExitBtn": {
        "message": "Exit"
    },
    "cliSaveSettingsBtn": {
        "message": "Save Settings"
    },
    "cliMscBtn": {
        "message": "Blackbox (MSC)"
    },
    "cliDiffAllBtn": {
        "message": "Diff All"
    },
    "cliCommandsHelp": {
        "message": "Type or paste commands in the box to the left. You can use the up and down arrow keys to recall previously typed commands. Type 'help' or click on this icon for more info."
    },
    "cliCopySuccessful": {
        "message": "Copied!"
    },
    "cliLoadFromFileBtn": {
        "message": "Load from File"
    },
    "cliConfirmSnippetDialogTitle": {
        "message": "Review loaded commands"
    },
    "cliConfirmSnippetNote": {
        "message": "<strong>Note</strong>: You can review and edit commands before execution."
    },
    "cliConfirmSnippetBtn": {
        "message": "Execute"
    },
    "loggingNote": {
        "message": "Data will be logged in this tab <span style=\\"color: red\\">only</span>, leaving the tab will <span style=\\"color: red\\">cancel</span> logging and application will return to its normal <strong>\\"configurator\\"</strong> state.<br /> You are free to select the global update period, data will be written into the log file every <strong>1</strong> second for performance reasons."
    },
    "loggingSamplesSaved": {
        "message": "Samples Saved:"
    },
    "loggingLogSize": {
        "message": "Log Size:"
    },
    "loggingButtonLogFile": {
        "message": "Select Log File"
    },
    "loggingStart": {
        "message": "Start Logging"
    },
    "loggingStop": {
        "message": "Stop Logging"
    },
    "loggingBack": {
        "message": "Leave Logging / Disconnect"
    },
    "loggingErrorNotConnected": {
        "message": "You need to <strong>connect</strong> first"
    },
    "loggingErrorLogFile": {
        "message": "Please select log file"
    },
    "loggingErrorOneProperty": {
        "message": "Please select at least one property to log"
    },
    "loggingAutomaticallyRetained": {
        "message": "Automatically loaded previous log file: <strong>$1</strong>"
    },
    "blackboxNotSupported": {
        "message": "Your flight controller's firmware does not support Blackbox logging or Blackbox feature is not enabled"
    },
    "blackboxConfiguration": {
        "message": "Blackbox Configuration"
    },
    "blackboxButtonSave": {
        "message": "Save and Reboot"
    },
    "serialLogging": {
        "message": "Outboard serial logging device"
    },
    "serialLoggingSupportedNote": {
        "message": "You can log to an external logging device (such as an OpenLog or compatible clone) by using a serial port. Configure the port on the Ports tab."
    },
    "onboardLoggingFlashLogger": {
        "message": "Onboard dataflash chip"
    },
    "OnboardSDCard": {
        "message": "Onboard SD card"
    },
    "sdcardNote": {
        "message": "Flight logs can be recorded to your flight controller's onboard SD card slot."
    },
    "dataflashNote": {
        "message": "Flight logs can be recorded to your flight controller's onboard dataflash chip."
    },
    "dataflashNotPresentNote": {
        "message": "Your flight controller does not have a compatible dataflash chip available."
    },
    "dataflashFirmwareUpgradeRequired": {
        "message": "Dataflash requires firmware &gt;= 1.8.0."
    },
    "dataflashButtonSaveFile": {
        "message": "Save flash to file..."
    },
    "dataflashButtonErase": {
        "message": "Erase flash"
    },
    "dataflashConfirmEraseTitle": {
        "message": "Confirm dataflash erase"
    },
    "dataflashConfirmEraseNote": {
        "message": "This will erase any Blackbox logs or other data contained in the dataflash which will take about 20 seconds, are you sure?"
    },
    "dataflashEraseing": {
        "message": "Erase in progress, please wait..."
    },
    "dataflashSavingTitle": {
        "message": "Saving dataflash to file"
    },
    "dataflashSavingNote": {
        "message": "Saving could take several minutes, please wait."
    },
    "dataflashSavingNoteAfter": {
        "message": "Save completed! Press \\"Ok\\" to continue."
    },
    "dataflashButtonSaveCancel": {
        "message": "Cancel"
    },
    "dataflashButtonSaveDismiss": {
        "message": "Ok"
    },
    "dataflashButtonEraseConfirm": {
        "message": "Yes, erase dataflash"
    },
    "dataflashButtonEraseCancel": {
        "message": "Cancel"
    },
    "dataflashFileWriteFailed": {
        "message": "Failed to write to the file you selected, are the permissions on that folder okay?"
    },
    "firmwareFlasherReleaseSummaryHead": {
        "message": "Release info"
    },
    "firmwareFlasherReleaseName": {
        "message": "Name/Version:"
    },
    "firmwareFlasherReleaseVersionUrl": {
        "message": "Visit release page."
    },
    "firmwareFlasherReleaseNotes": {
        "message": "Release notes:"
    },
    "firmwareFlasherReleaseDate": {
        "message": "Date:"
    },
    "firmwareFlasherReleaseStatus": {
        "message": "State:"
    },
    "firmwareFlasherReleaseTarget": {
        "message": "Target:"
    },
    "firmwareFlasherReleaseFile": {
        "message": "Binary:"
    },
    "firmwareFlasherReleaseStatusReleaseCandidate": {
        "message": "<span style=\\"color: red\\">IMPORTANT: This firmware release is currently marked as a release candidate.  Please report any issues immediately.</span>"
    },
    "firmwareFlasherReleaseFileUrl": {
        "message": "Download manually."
    },
    "firmwareFlasherTargetWarning": {
        "message": "<span style=\\"color: red\\">IMPORTANT</span>: Ensure you flash a file appropriate for your target.  Flashing a binary for the wrong target can cause <span style=\\"color: red\\">bad</span> things to happen."
    },
    "firmwareFlasherPath": {
        "message": "Path:"
    },
    "firmwareFlasherSize": {
        "message": "Size:"
    },
    "firmwareFlasherStatus": {
        "message": "Status:"
    },
    "firmwareFlasherProgress": {
        "message": "Progress:"
    },
    "firmwareFlasherLoadFirmwareFile": {
        "message": "Please load firmware file"
    },
    "firmwareFlasherNoReboot": {
        "message": "No reboot sequence"
    },
    "firmwareFlasherOnlineSelectBoardDescription": {
        "message": "Select your board to see available online firmware releases - Select the correct firmware appropriate for your board. Please note that <strong>Auto-select Target</strong> will only work for INAV firmwares 5.0 and newer."
    },
    "firmwareFlasherOnlineSelectFirmwareVersionDescription": {
        "message": "Select firmware version for your board.<br />Note: even though you can flash different versions of the firmware using this Configurator. When setting up the flight controller, you should match the major and minor version numbers for both firmware and Configurator."
    },
    "firmwareFlasherNoRebootDescription": {
        "message": "Enable if you powered your FC while the bootloader pins are jumpered or have your FC's BOOT button pressed."
    },
    "firmwareFlasherFlashOnConnect": {
        "message": "Flash on connect"
    },
    "firmwareFlasherFlashOnConnectDescription": {
        "message": "Attempt to flash the board automatically (triggered by newly detected serial port)."
    },
    "firmwareFlasherFullChipErase": {
        "message": "Full chip erase"
    },
    "firmwareFlasherFullChipEraseDescription": {
        "message": "Wipes all configuration data currently stored on the board."
    },
    "firmwareFlasherFlashDevelopmentFirmware": {
        "message": "Use Development Firmware"
    },
    "firmwareFlasherFlashDevelopmentFirmwareDescription": {
        "message": "Flash most recent (untested) development firmware."
    },
    "firmwareFlasherManualBaud": {
        "message": "Manual baud rate"
    },
    "firmwareFlasherManualBaudDescription": {
        "message": "Manual selection of baud rate for boards that don't support the default speed or for flashing via bluetooth.<br /><span style=\\"color: red\\">Note:</span> Not used when flashing via USB DFU"
    },
    "firmwareFlasherShowDevelopmentReleases": {
        "message": "Show unstable releases"
    },
    "firmwareFlasherShowDevelopmentReleasesDescription": {
        "message": "Show Release-Candidates and Development Releases."
    },
    "firmwareFlasherOptionLabelSelectFirmware": {
        "message": "Choose a Firmware / Board"
    },
    "firmwareFlasherOptionLabelSelectBoard": {
        "message": "Choose a Board"
    },
    "firmwareFlasherOptionLabelSelectFirmwareVersion": {
        "message": "Choose a Firmware version"
    },
    "firmwareFlasherOptionLabelSelectFirmwareVersionFor": {
        "message": "Choose a Firmware version for"
    },
    "firmwareFlasherButtonAutoSelect": {
        "message": "Auto-select Target"
    },
    "firmwareFlasherButtonLoadLocal": {
        "message": "Load Firmware [Local]"
    },
    "firmwareFlasherButtonLoadOnline": {
        "message": "Load Firmware [Online]"
    },
    "firmwareFlasherButtonLoading": {
        "message": "Loading..."
    },
    "firmwareFlasherFlashFirmware": {
        "message": "Flash Firmware"
    },
    "firmwareFlasherGithubInfoHead": {
        "message": "Github Firmware Info"
    },
    "firmwareFlasherCommiter": {
        "message": "Committer:"
    },
    "firmwareFlasherDate": {
        "message": "Date:"
    },
    "firmwareFlasherHash": {
        "message": "Hash:"
    },
    "firmwareFlasherUrl": {
        "message": "Go to GitHub to review this commit..."
    },
    "firmwareFlasherMessage": {
        "message": "Message:"
    },
    "firmwareFlasherWarningHead": {
        "message": "Warning"
    },
    "firmwareFlasherWarningText": {
        "message": "Please do <span style=\\"color: red\\">not</span> try to flash <strong>non-iNAV</strong> hardware with this firmware flasher.<br />Do <span style=\\"color: red\\">not</span> <strong>disconnect</strong> the board or <strong>turn off</strong> your computer while flashing.<br /><br /><strong>Note: </strong>STM32 bootloader is stored in ROM, it cannot be bricked.<br /><!--strong>Note: </strong><span style=\\"color: red\\">Auto-Connect</span> is always disabled while you are inside firmware flasher.<br / --><strong>Note: </strong>Make sure you have a backup; some upgrades/downgrades will wipe your configuration.<br /><strong>Note:</strong> If you have problems flashing try disconnecting all cables from your FC first, try rebooting, upgrade chrome, upgrade drivers.<br /><strong>Note:</strong> When flashing boards that have directly connected USB sockets (Matek H743-SLIM, Holybro Kakute etc) ensure you have read the USB Flashing section of the INAV manual and have the correct software and drivers installed"
    },
    "firmwareFlasherRecoveryHead": {
        "message": "<strong>Recovery / Lost communication<strong>"
    },
    "firmwareFlasherRecoveryText": {
        "message": "If you have lost communication with your board follow these steps to restore communication: <ul><li>Power off</li><li>Enable 'No reboot sequence', enable 'Full chip erase'.</li><li>Jumper the BOOT pins or hold BOOT button.</li><li>Power on (activity LED will NOT flash if done correctly).</li><li>Install all STM32 drivers and Zadig if required (see <a href=\\"https://github.com/iNavFlight/inav/blob/master/docs/USB%20Flashing.md\\"target=\\"_blank\\">USB Flashing</a> section of INAV manual).</li><li>Close configurator, Close all running chrome instances, Close all Chrome apps, Restart Configurator.</li><li>Release BOOT button if your FC has one.</li><li>Flash with correct firmware (using manual baud rate if specified in your FC's manual).</li><li>Power off.</li><li>Remove BOOT jumper.</li><li>Power on (activity LED should flash).</li><li>Connect normally.</li></ul>"
    },
    "firmwareFlasherButtonLeave": {
        "message": "Leave Firmware Flasher"
    },
    "firmwareFlasherFirmwareNotLoaded": {
        "message": "Firmware not loaded"
    },
    "firmwareFlasherHexCorrupted": {
        "message": "HEX file appears to be corrupted"
    },
    "firmwareFlasherRemoteFirmwareLoaded": {
        "message": "<span style=\\"color: #37a8db\\">Remote Firmware loaded, ready for flashing</span>"
    },
    "firmwareFlasherFailedToLoadOnlineFirmware": {
        "message": "Failed to load remote firmware"
    },
    "ledStripHelp": {
        "message": "The flight controller can control colors and effects of individual LEDs on a strip.<br />Configure LEDs on the grid, configure wiring order then attach LEDs on your aircraft according to grid positions. LEDs without wire ordering number will not be saved.<br />Double-click on a color to edit the HSV values."
    },
    "ledStripButtonSave": {
        "message": "Save"
    },
    "ledStripEepromSaved": {
        "message": "EEPROM <span style=\\"color: #37a8db\\">saved</span>: LED"
    },
    "controlAxisRoll": {
        "message": "Roll [A]"
    },
    "controlAxisPitch": {
        "message": "Pitch [E]"
    },
    "controlAxisYaw": {
        "message": "Yaw [R]"
    },
    "controlAxisThrottle": {
        "message": "Throttle [T]"
    },
    "controlAxisMotor": {
        "message": "Motor"
    },
    "radioChannelShort": {
        "message": "CH "
    },
    "configHelp2": {
        "message": "Arbitrary board rotation in degrees, to allow mounting it sideways / upside down / rotated etc. When running external sensors, use the sensor alignments (Gyro, Acc, Mag) to define sensor position independent from board orientation. "
    },
    "failsafeFeaturesHelpOld": {
        "message": "Failsafe configuration has changed considerably. Use latest INAV"
    },
    "failsafePaneTitleOld": {
        "message": "Receiver failsafe"
    },
    "failsafeFeatureItemOld": {
        "message": "Failsafe settings on RX signal loss"
    },
    "failsafeThrottleItemOld": {
        "message": "Failsafe Throttle"
    },
    "failsafeFeaturesHelpNew": {
        "message": "Failsafe has two stages. <strong>Stage 1</strong> is entered when a flightchannel has an invalid pulse duration, the receiver reports failsafe mode or there is no signal from the receiver at all, the channel fallback settings are applied to <span style=\\"color: red\\">all channels</span> and a short amount of time is provided to allow for recovery. <strong>Stage 2</strong> is entered when the error condition takes longer than the configured guard time while the craft is <span style=\\"color: red\\">armed</span>, all channels will remain at the applied channel fallback setting unless overruled by the chosen procedure. <br /><strong>Note:</strong> Prior to entering stage 1, channel fallback settings are also applied to individual radio channels that have invalid pulses."
    },
    "failsafePulsrangeTitle": {
        "message": "Valid Pulse Range Settings"
    },
    "failsafePulsrangeHelp": {
        "message": "Pulses shorter than minimum or longer than maximum are invalid and will trigger application of individual channel fallback settings for radio channels or entering stage 1 for flightchannels"
    },
    "failsafeRxMinUsecItem": {
        "message": "Minimum duration"
    },
    "failsafeRxMaxUsecItem": {
        "message": "Maximum duration"
    },
    "failsafeChannelFallbackSettingsTitle": {
        "message": "Channel Fallback Settings"
    },
    "failsafeChannelFallbackSettingsHelp": {
        "message": "These settings are applied to invalid individual radio channels or to all channels when entering stage 1. <strong>Note:</strong> values are saved in steps of 25usec, so small changes disappear"
    },
    "failsafeChannelFallbackSettingsAuto": {
        "message": "<strong>Auto</strong> means Roll, Pitch and Yaw to center and Throttle low. <strong>Hold</strong> means maintain the last good value received"
    },
    "failsafeChannelFallbackSettingsHold": {
        "message": "<strong>Hold</strong> means maintain the last good value received. <strong>Set</strong> means the value given here will be used"
    },
    "failsafeStageTwoSettingsTitle": {
        "message": "Settings"
    },
    "failsafeFeatureItem": {
        "message": "Enabled"
    },
    "failsafeFeatureHelp": {
        "message": "<strong>Note:</strong> When Stage 2 is DISABLED, the fallback setting <strong>Auto</strong> is used instead of the user settings for all flightchannels (Roll, Pitch, Yaw and Throttle)."
    },
    "failsafeDelayItem": {
        "message": "Guard time for activation after signal lost"
    },
    "failsafeDelayHelp": {
        "message": "Time for stage 1 to wait for recovery"
    },
    "failsafeThrottleItem": {
        "message": "Throttle value used while landing"
    },
    "failsafeOffDelayItem": {
        "message": "Delay for turning off the Motors during Failsafe"
    },
    "failsafeOffDelayHelp": {
        "message": "Time to stay in landing mode untill the motors are turned off and the craft is disarmed"
    },
    "failsafeSubTitle1": {
        "message": "Procedure"
    },
    "failsafeProcedureItemSelect1": {
        "message": "Land"
    },
    "failsafeProcedureItemSelect2": {
        "message": "Drop"
    },
    "failsafeProcedureItemSelect3": {
        "message": "RTH"
    },
    "failsafeProcedureItemSelect4": {
        "message": "Do nothing"
    },
    "failsafeKillSwitchItem": {
        "message": "Failsafe Kill Switch (instantly disarm aircraft on failsafe)"
    },
    "failsafeKillSwitchHelp": {
        "message": "Set this option to make the failsafe switch, configured in the modes tab, act as a direct kill switch, bypassing the selected failsafe procedure. <strong>Note:</strong> Arming is blocked with the failsafe kill switch in the ON position"
    },
    "failsafeUseMinimumDistanceItem": {
        "message": "Use alternate Minimum Distance Failsafe Procedure when close to Home"
    },
    "failsafeUseMinimumDistanceHelp": {
        "message": "Set this option if you need an alternate failsafe behavior when the craft is close to Home. For example the author of the feature has a plane that failsafes when the wings detach on landing, when the RTH failsafe behavior normally desired in flight is no longer wanted or needed."
    },
    "failsafeMinDistanceItem": {
        "message": "Failsafe Minimum Distance"
    },
    "failsafeMinDistanceHelp": {
        "message": "The craft will use the alternate failsafe behavior when it is between 0 and this minimum distance in centimeters away from Home. For example if set to 2000 centimeters (20 meters), and the craft is at 13 meters, the Failsafe Minimum Distance Procedure will be followed. When the craft is at 25 meters, the normal failsafe procedure will be followed. If set to 0, the normal failsafe procedure will be used at all times. "
    },
    "failsafeMinDistanceProcedureItem": {
        "message": "Failsafe Minimum Distance Procedure"
    },
    "failsafeMinDistanceProcedureHelp": {
        "message": "This is the failsafe procedure that will be followed when the craft is closer than the Failsafe Minimum Distance from Home."
    },
    "mainHelpArmed": {
        "message": "Motor Arming"
    },
    "mainHelpFailsafe": {
        "message": "Failsafe Mode"
    },
    "mainHelpLink": {
        "message": "Serial Link Status"
    },
    "warning": {
        "message": "Warning"
    },
    "escProtocol": {
        "message": "ESC protocol"
    },
    "escRefreshRate": {
        "message": "ESC refresh rate"
    },
    "escProtocolHelp": {
        "message": "ESC has to support chosen protocol. Change only if you know that ESC supports it!"
    },
    "escRefreshRatelHelp": {
        "message": "ESC has to support refresh rate. Change only if you know that ESC supports it!"
    },
    "servoRefreshRate": {
        "message": "Servo refresh rate"
    },
    "servoRefreshRatelHelp": {
        "message": "Servo has to support refresh rate. Change only if you know that servo supports it. Too high refresh rate might damage servos!"
    },
    "logPwmOutputDisabled": {
        "message": "PWM output is disabled. Motors and servos will not work. Use <u>Outputs</u> tab to enable!"
    },
    "configurationGyroSyncTitle": {
        "message": "Synchronize looptime with gyroscope"
    },
    "configurationGyroLpfTitle": {
        "message": "Gyroscope LPF cutoff frequency"
    },
    "configurationGyroSyncDenominator": {
        "message": "Gyroscope denominator"
    },
    "yawJumpPreventionLimit": {
        "message": "Yaw jump prevention"
    },
    "yawJumpPreventionLimitHelp": {
        "message": "Prevent yaw jumps during yaw stops and rapid YAW input. To disable set to 500. Adjust this if your aircraft 'skids out'. Higher values increases YAW authority but can cause roll/pitch instability in case of underpowered UAVs. Lower values makes yaw adjustments more gentle but can cause UAV unable to keep heading"
    },
    "yawPLimit": {
        "message": "Yaw P limit"
    },
    "yawPLimitHelp": {
        "message": "Limiter for yaw P term. Increasing it improves yaw authority but can cause instability on ROLL and PITCH."
    },
    "tabFiltering": {
        "message": "Filtering"
    },
    "gyroLpfCutoffFrequency": {
        "message": "Gyro LPF cutoff frequency"
    },
    "gyroLpfCutoffFrequencyHelp": {
        "message": "Software-based filter to remove mechanical vibrations from the gyro signal. Value is cutoff frequency (Hz). For larger frames with bigger props set to lower value. Too high value can cause motor and ESC overheating."
    },
    "accLpfCutoffFrequency": {
        "message": "Accelerometer LPF cutoff frequency"
    },
    "yawLpfCutoffFrequency": {
        "message": "Yaw LPF cutoff frequency"
    },
    "yawLpfCutoffFrequencyHelp": {
        "message": "Yaw P-term LPF cutoff frequency"
    },
    "rollPitchItermIgnoreRate": {
        "message": "Roll/Pitch I-term ignore rate"
    },
    "rollPitchItermIgnoreRateHelp": {
        "message": "PID I-Term is ignored above this rotation rate. This prevents I-term from accumulation during maneuvers"
    },
    "yawItermIgnoreRate": {
        "message": "Yaw I-term ignore rate"
    },
    "yawItermIgnoreRateHelp": {
        "message": "PID I-Term is ignored above this rotation rate. This prevents I-term from accumulation during maneuvers"
    },
    "axisAccelerationLimitRollPitch": {
        "message": "Roll/Pitch acceleration limit"
    },
    "axisAccelerationLimitRollPitchHelp": {
        "message": "This is maximum angular acceleration rate pilot is allowed to require from UAV. UAV should be able to satisfy this accelaration rate. As a rule of thumb, the bigger the UAV, to lower acceleration it can handle"
    },
    "axisAccelerationLimitYaw": {
        "message": "Yaw acceleration limit"
    },
    "axisAccelerationLimitYawHelp": {
        "message": "This is maximum angular acceleration rate pilot is allowed to require from UAV. UAV should be able to satisfy this accelaration rate. As a rule of thumb, the bigger the UAV, to lower acceleration it can handle"
    },
    "pidTuningTPAHelp": {
        "message": "Throttle PID Attenuation factor. PID gains will be reduced lineary starting from 0 at TPA Breakpoint (Throttle) to TPA factor at max throttle"
    },
    "pidTuningTPABreakPointHelp": {
        "message": "Throttle PID Attenuation begins when Throttle position exceeds this value. "
    },
    "configurationAsyncMode": {
        "message": "Asynchronous mode"
    },
    "configurationGyroFrequencyTitle": {
        "message": "Gyroscope task frequency"
    },
    "configurationAccelerometerFrequencyTitle": {
        "message": "Accelerometer task frequency"
    },
    "configurationAttitudeFrequencyTitle": {
        "message": "Attitude task frequency"
    },
    "configurationGyroLpfHelp": {
        "message": "Hardware based cutoff frequency for gyroscope. In general, bigger value is better but makes UAV more sensitive to vibrations"
    },
    "configurationAsyncModeHelp": {
        "message": "See Firmware \\"Looptime\\" documentation for details"
    },
    "configurationGyroFrequencyHelp": {
        "message": "In general, higher value is better but makes UAV more sensitive to vibrations. Should be kept above 'Flight Controller Loop Time' frequency. Maximal practical value is hardware dependant. If set too high, board might not run properly. Observe CPU usage."
    },
    "configurationAccelerometerFrequencyHelp": {
        "message": "For Acro purposes, this value can be lowered from default"
    },
    "configurationAttitudeFrequencyHelp": {
        "message": "For Acro purposes, this value can be lowered from default"
    },
    "configurationLoopTimeHelp": {
        "message": "In general, higher value is better. With asynchronous gyroscope, should be kept below gyro update frequency. Maximal practical value is hardware dependant. If set too high, board might not run properly. Observe CPU usage."
    },
    "tabOSD": {
        "message": "OSD"
    },
    "configurationSensors": {
        "message": "Sensors & Buses"
    },
    "sensorAccelerometer": {
        "message": "Accelerometer"
    },
    "sensorMagnetometer": {
        "message": "Magnetometer"
    },
    "sensorBarometer": {
        "message": "Barometer"
    },
    "sensorPitot": {
        "message": "Pitot tube"
    },
    "sensorRangefinder": {
        "message": "Rangefinder"
    },
    "sensorOpflow": {
        "message": "Optical flow"
    },
    "manualEnablingTemplate": {
        "message": "To enable via CLI use <strong>feature {name}</strong> command"
    },
    "armingFailureReasonTitle": {
        "message": "Pre-arming checks"
    },
    "BLOCKED_UAV_NOT_LEVEL": {
        "message": "UAV is levelled"
    },
    "BLOCKED_SENSORS_CALIBRATING": {
        "message": "Run-time calibration"
    },
    "BLOCKED_SYSTEM_OVERLOADED": {
        "message": "CPU load"
    },
    "BLOCKED_NAVIGATION_SAFETY": {
        "message": "Navigation is safe"
    },
    "BLOCKED_COMPASS_NOT_CALIBRATED": {
        "message": "Compass calibrated"
    },
    "BLOCKED_ACCELEROMETER_NOT_CALIBRATED": {
        "message": "Accelerometer calibrated"
    },
    "BLOCKED_HARDWARE_FAILURE": {
        "message": "Hardware health"
    },
    "BLOCKED_INVALID_SETTING": {
        "message": "Settings validated"
    },
    "armingCheckPass": {
        "message": "<div class=\\"checkspass\\"></div>"
    },
    "armingCheckFail": {
        "message": "<div class=\\"checksfail\\"></div>"
    },
    "calibrationHead1": {
        "message": "Accelerometer Calibration"
    },
    "calibrationHead2": {
        "message": "Accelerometer Values"
    },
    "calibrationHead3": {
        "message": "Level Calibration"
    },
    "calibrationHead4": {
        "message": "Compass Calibration"
    },
    "calibrationHead5": {
        "message": "Optic Flow Calibration"
    },
    "OpflowCalText": {
        "message": "After pressing the button you have 30 seconds to hold the model in the air and tilt it to sides without moving it horizontally. Note that optic flow sensor needs to observe the surface at all times."
    },
    "OpflowCalBtn": {
        "message": "Calibrate Optic Flow sensor"
    },
    "accZero": {
        "message": "Acc Zero"
    },
    "accGain": {
        "message": "Acc Gain"
    },
    "NoteCalibration": {
        "message": "Note: If the IMU is mounted in another angle or on the underside of the flight controller. Do the calibration steps with the IMU pointing as shown in the pictures, not the quad (otherwise calibration won´t work)."
    },
    "AccBtn": {
        "message": "Calibrate Accelerometer"
    },
    "stepTitle1": {
        "message": "Step 1"
    },
    "stepTitle2": {
        "message": "Step 2"
    },
    "stepTitle3": {
        "message": "Step 3"
    },
    "stepTitle4": {
        "message": "Step 4"
    },
    "stepTitle5": {
        "message": "Step 5"
    },
    "stepTitle6": {
        "message": "Step 6"
    },
    "MagXText": {
        "message": "Zero X"
    },
    "MagYText": {
        "message": "Zero Y"
    },
    "MagZText": {
        "message": "Zero Z"
    },
    "MagGainXText": {
        "message": "Gain X"
    },
    "MagGainYText": {
        "message": "Gain Y"
    },
    "MagGainZText": {
        "message": "Gain Z"
    },
    "OpflowScaleText": {
        "message": "Scale"
    },
    "AccResetBtn": {
        "message": "Reset Accelerometer Calibration"
    },
    "MagCalText": {
        "message": "After pressing the button you have 30 seconds to hold the model in the air and rotate it so that each side (front, back, left, right, top and bottom) points down towards the earth. Be sure that your compass is not near magnets or electromagnets when installed in the craft or performing the calibration."
    },
    "MagBtn": {
        "message": "Calibrate Compass"
    },
    "LevCalText": {
        "message": "Please put some Text here…"
    },
    "LevBtn": {
        "message": "Level calibration"
    },
    "tabMixer": {
        "message": "Mixer"
    },
    "presetsApplyHeader": {
        "message": "Warning"
    },
    "presetApplyDescription": {
        "message": "<p style='color: darkred;'>Make sure that <strong>mixer</strong> was configured before applying any Presets!</p><p>Preset overwrites selected configuration values including mixer, filtering, PIDs and other. Settings like: flight modes, radio settings, failsafe and OSD are not changed. Applied values should <strong>NOT</strong> treated as final values, but entry points for final tuning. <br> Always check new configuration before flying!</p>"
    },
    "OK": {
        "message": "OK"
    },
    "accCalibrationStartTitle": {
        "message": "Accelerometer Calibration"
    },
    "accCalibrationStartBody": {
        "message": "Place flight controller in a position showed in image, then press <strong>Calibrate</strong> button again. Repeat for each of 6 position. Keep it stable during calibration."
    },
    "accCalibrationStopTitle": {
        "message": "Calibration finished"
    },
    "accCalibrationStopBody": {
        "message": "Accelerometer calibration finished, check if values have been saved."
    },
    "accCalibrationProcessing": {
        "message": "Processing..."
    },
    "tabProgramming": {
        "message": "Programming"
    },
    "tabAdvancedTuning": {
        "message": "Advanced Tuning"
    },
    "advancedTuningSave": {
        "message": "Save and Reboot"
    },
    "tabAdvancedTuningTitle": {
        "message": "Advanced Tuning"
    },
    "tabAdvancedTuningAirplaneTuningTitle": {
        "message": ": Fixed Wing"
    },
    "tabAdvancedTuningMultirotorTuningTitle": {
        "message": ": Multirotors"
    },
    "tabAdvancedTuningGenericTitle": {
        "message": "Generic settings"
    },
    "presetApplyHead": {
        "message": "Applies following settings:"
    },
    "gyroNotchHz1": {
        "message": "First gyro notch filter freq."
    },
    "gyroNotchCutoff1": {
        "message": "First gyro notch filter cutoff freq."
    },
    "gyroNotchHz2": {
        "message": "Second gyro notch filter freq."
    },
    "gyroNotchCutoff2": {
        "message": "Second gyro notch filter cutoff freq."
    },
    "gyroNotchHz1Help": {
        "message": "Should be tuned to propeller harmonic frequency. Usually equals <i>[motor_frequency] * [propeller_blades_number]</i><br><br>Has to be above cutoff frequency<br><br><i>0</i> disables the filter"
    },
    "gyroNotchHz2Help": {
        "message": "Should be tuned to motor frequency.<br><br>Has to be above cutoff frequency and below first gyro notch filter frequency.<br><br><i>0</i> disables the filter"
    },
    "gyroNotchCutoff1Help": {
        "message": "Defines band of notch filter. <br><br>Has to be kept below notch filter frequency."
    },
    "gyroNotchCutoff2Help": {
        "message": "Defines band of notch filter. <br><br>Has to be kept below notch filter frequency."
    },
    "dtermNotchHz": {
        "message": "Dterm notch filter freq."
    },
    "dtermNotchCutoff": {
        "message": "Dterm notch filter cutoff freq."
    },
    "dtermNotchHzHelp": {
        "message": "Should be placed between first and second gyro notch filter frequency<br><br>Has to be above cutoff frequency<br><br><i>0</i> disables the filter"
    },
    "dtermNotchCutoffHelp": {
        "message": "Defines band of filter. <br><br>Has to be kept below notch filter frequency."
    },
    "multiRotorNavigationConfiguration": {
        "message": "Multirotor Navigation Settings"
    },
    "userControlMode": {
        "message": "User Control Mode"
    },
    "posholdDefaultSpeed": {
        "message": "Default navigation speed"
    },
    "posholdDefaultSpeedHelp": {
        "message": "Default speed during RTH, also used for WP navigation if no speed set for WP leg. Limited to Max. navigation speed"
    },
    "posholdMaxSpeed": {
        "message": "Max. navigation speed"
    },
    "posholdMaxManualSpeed": {
        "message": "Max. CRUISE speed"
    },
    "posholdMaxManualSpeedHelp": {
        "message": "Maximum horizonal velocity allowed for pilot manual control during POSHOLD/CRUISE mode"
    },
    "posholdMaxClimbRate": {
        "message": "Max. navigation climb rate [cm/s]"
    },
    "posholdMaxManualClimbRate": {
        "message": "Max. ALTHOLD climb rate [cm/s]"
    },
    "posholdMaxBankAngle": {
        "message": "Multirotor max. banking angle"
    },
    "posholdMaxBankAngleHelp": {
        "message": "Maximum banking angle in navigation modes. Constrained by maximum ROLL angle in PID tuning tab."
    },
    "posholdHoverThrottle": {
        "message": "Hover throttle"
    },
    "navmcAltholdThrottle": {
        "message": "Stick position for althold hover"
    },
    "mcWpSlowdown": {
        "message": "Slow down when approaching waypoint"
    },
    "mcWpSlowdownHelp": {
        "message": "When enabled, NAV engine will slow down when switching to the next waypoint. This prioritizes turning over forward movement. When disabled, NAV engine will continue to the next waypoint and turn as it goes."
    },
    "positionEstimatorConfiguration": {
        "message": "Position Estimator"
    },
    "w_z_baro_p": {
        "message": "Vertical position barometer weight"
    },
    "w_z_gps_p": {
        "message": "Vertical position GPS weight"
    },
    "w_z_gps_v": {
        "message": "Vertical speed GPS weight"
    },
    "w_xy_gps_p": {
        "message": "Horizontal position GPS weight"
    },
    "w_xy_gps_v": {
        "message": "Horizontal speed GPS weight"
    },
    "positionEstimatorConfigurationDisclaimer": {
        "message": "These values should be changed very carefully. In most cases there is no need to change them. For advanced users only!"
    },
    "gps_min_sats": {
        "message": "Min. GPS satellites for a valid fix"
    },
    "w_z_baro_p_help": {
        "message": "When this value is set to <strong>0</strong>, barometer is not used for altitude computation"
    },
    "w_z_gps_p_help": {
        "message": "This setting is only used when no barometer is installed and <strong>inav_use_gps_no_baro</strong> is configured."
    },
    "wirelessModeSwitch": {
        "message": "Wireless mode"
    },
    "rthConfiguration": {
        "message": "RTH Settings"
    },
    "autoLandingSettings": {
        "message": "Automatic Landing Settings"
    },
    "minRthDistance": {
        "message": "Min. RTH distance"
    },
    "minRthDistanceHelp": {
        "message": "If UAV is within this distance from the home point, it will land instead of RTH then land"
    },
    "rthClimbFirst": {
        "message": "Climb before RTH"
    },
    "rthClimbFirstHelp": {
        "message": "If set to ON or ON_FW_SPIRAL, aircraft will climb to nav_rth_altitude first before turning to head home. If set to OFF, aircraft will turn and head home immediately climbing on the way. For a fixed wing, ON will use a linear climb, ON_FW_SPIRAL will use a loiter turning climb with climb rate set by nav_auto_climb_rate and turn rate set by nav_fw_loiter_radius (ON_FW_SPIRAL is a fixed wing setting and behaves the same as ON for a multirotor)."
    },
    "rthClimbIgnoreEmergency": {
        "message": "Climb regardless of position sensors health"
    },
    "rthAltControlOverride": {
        "message": "Override RTH altitude and climb setting with roll/pitch stick"
    },
    "rthAltControlOverrideHELP": {
        "message": "When enabled, the climb on RTH can be canceled by holding full pitch down for >1 second so aircraft will fly home at the current altitude. On fixed wing aircraft, the 'Climb before RTH' setting can be overriden by holding full roll left or right for >1 second so that the plane will turn towards home immediately."
    },
    "rthTailFirst": {
        "message": "Tail first"
    },
    "rthAllowLanding": {
        "message": "Land after RTH"
    },
    "rthAltControlMode": {
        "message": "RTH altitude mode"
    },
    "rthAbortThreshold": {
        "message": "RTH abort threshold"
    },
    "rthAbortThresholdHelp": {
        "message": "RTH sanity checking feature will notice if the distance to home is increasing during RTH and if it exceeds the threshold defined by this parameter, instead of continuing RTH the UAV will enter emergency landing. Default is 500m which is safe enough for both multirotors and airplanes."
    },
    "fsMissionDelay": {
        "message": "Failsafe Mission Delay"
    },
    "fsMissionDelayHelp": {
        "message": "Defines a delay in seconds, how long INAV has to wait before Failsafe RTH is engaged, if the Aircraft is in a waypoint mission. Set to -1 to disable Failsafe entirely [0-600s]"
    },
    "drNavigation": {
        "message": "Dead Reckoning Navigation"
    },
    "drNavigationHelp": {
        "message": "Allows INAV to continue navigation (Waypoint, Return to Home, Cruise, Coursehold, etc.) during short GPS outages. This feature needs compass and airspeed sensor enabled on Fixed Wing aircraft."
    },
    "rthAltitude": {
        "message": "RTH altitude"
    },
    "rthAltitudeHelp": {
        "message": "Used in Extra, Fixed and 'At Least' RTH altitude modes"
    },
    "rthTrackBack": {
        "message": "RTH Track Back Mode"
    },
    "rthTrackBackHelp": {
        "message": "When enabled, the aircraft will follow its last path backwards first before flying home directly. Fixed Wing crafts will fly back the path with climbing but not descending. Usage modes for RTH Track Back. OFF = disabled, ON = Normal and Failsafe RTH, FS = Failsafe RTH only."
    },
    "rthTrackBackDistance": {
        "message": "RTH Track Back Distance"
    },
    "rthTrackBackDistanceHelp": {
        "message": "Distance flown during Track Back. Normal RTH is executed once this total flight distance is exceeded [m]."
    },
    "rthSafeHome": {
        "message": "Safe Home Mode"
    },
    "rthSafeHomeHelp": {
        "message": "Used to control when safehomes will be used. Possible values are OFF, RTH and RTH_FS. See Safehome documentation for more information."
    },
    "rthSafeHomeDistance": {
        "message": "Safe Home Max Distance"
    },
    "rthSafeHomeDistanceHelp": {
        "message": "In order for a safehome to be used, it must be less than this distance [in cm] from the arming point."
    },
    "navMaxAltitude": {
        "message": "Max Altitude for Navigation"
    },
    "navMaxAltitudeHelp": {
        "message": "Max allowed altitude (above Home Point) that applies to all NAV modes (including Altitude Hold). 0 means limit is disabled"
    },
    "rthHomeAltitudeLabel": {
        "message": "RTH Home altitude"
    },
    "rthHomeAltitudeHelp": {
        "message": "Used when not landing at the home point. Upon arriving at home, the plane will loiter and change altitude to the RTH Home Altitude. Default is 0, which is feature disabled."
    },
    "rthTwoStage": {
        "message": "Climb First Stage Method"
    },
    "rthTwoStageHelp": {
        "message": "Staged Return To Home Function if Climb First is enabled. Set Climb First Stage Altitude to 0, to use classic Single-Stage RTH."
    },
    "rthTwoStageAlt": {
        "message": "Climb First Stage Altitude"
    },
    "rthTwoStageAltHelp": {
        "message": "Altitude Setting for the first Stage of Staged RTH. Set to 0 to Disable Two-Stage RTH [0-65000cm]"
    },
    "rthUseLinearDescent": {
        "message": "Use Linear Descent"
    },
    "rthUseLinearDescentHelp": {
        "message": "If enabled, the aircraft will slowly descent to the RTH Home Altitude on the heading home leg of RTH."
    },
    "rthLinearDescentStart": {
        "message": "Linear Descent Start Distance"
    },
    "rthLinearDescentStartHelp": {
        "message": "This is the distance away from the home position to start the linear descent. If set to 0, the linear descent will start immediately."
    },
    "landMaxAltVspd": {
        "message": "The craft will start to descend at this speed, once it reaches the <strong>Home</strong> location."
    },
    "landMaxAltVspdHelp": {
        "message": "After RTH if autolanding is enabled the aircraft will start to descend at this speed until reaching <strong>Slow down altitude</strong>"
    },
    "landSlowdownMaxAlt": {
        "message": "When the craft has descended to <i>this</i> altitude. It will begin to slow down for landing."
    },
    "landSlowdownMaxAltHelp": {
        "message": "When the aircraft reaches this altitude it will start to slow down linearly between the <strong>Initial landing speed</strong> and <strong>Final landing speed</strong> to reach it at <strong>Final approach altitude</strong>"
    },
    "landSlowdownMinAlt": {
        "message": "When the craft has descended to <i>this</i> altitude, it will have slowed to the touch down speed."
    },
    "landMinAltVspd": {
        "message": "This is the touch down speed."
    },
    "landMinAltVspdHelp": {
        "message": "The aircraft vertical speed target will be this value when the aircraft reaches the <strong>Final approach altitude</strong> after having slowed down linearly from the <strong>Slow down altitude</strong> at <strong>Initial landing speed</strong>"
    },
    "emergencyDescentRate": {
        "message": "Emergency landing speed"
    },
    "cruiseThrottle": {
        "message": "Cruise throttle"
    },
    "cruiseYawRateLabel": {
        "message": "Cruise Yaw Rate"
    },
    "cruiseYawRateHelp": {
        "message": "This is the turning rate in Cruise and 3D Cruise."
    },
    "cruiseManualThrottleLabel": {
        "message": "Allow manual throttle increase"
    },
    "cruiseManualThrottleHelp": {
        "message": "Turning this on, will allow you to override automatic throttle control in all navigation modes. You cannot go below the automatic throttle value, except with motor stop on zero throttle."
    },
    "minThrottle": {
        "message": "Min. throttle"
    },
    "maxThrottle": {
        "message": "Max. throttle"
    },
    "maxBankAngle": {
        "message": "Max. navigation bank angle"
    },
    "maxBankAngleHelp": {
        "message": "Maximum banking angle in navigation modes. Constrained by maximum ROLL angle in PID tuning tab."
    },
    "maxClimbAngle": {
        "message": "Max. navigation climb angle"
    },
    "maxClimbAngleHelp": {
        "message": "Maximum climb angle in navigation modes. Constrained by maximum PITCH angle in PID tuning tab."
    },
    "navManualClimbRate": {
        "message": "Max. Alt-hold climb rate"
    },
    "navManualClimbRateHelp": {
        "message": "Maximum climb/descent rate firmware is allowed when processing pilot input for ALTHOLD control mode [cm/s]"
    },
    "navAutoClimbRate": {
        "message": "Max. navigation climb rate"
    },
    "navAutoClimbRateHelp": {
        "message": "Maximum climb/descent rate that UAV is allowed to reach during navigation modes. [cm/s]"
    },
    "maxDiveAngle": {
        "message": "Max. navigation dive angle"
    },
    "maxDiveAngleHelp": {
        "message": "Maximum dive angle in navigation modes. Constrained by maximum PITCH angle in PID tuning tab."
    },
    "pitchToThrottle": {
        "message": "Pitch to throttle ratio"
    },
    "pitchToThrottleHelp": {
        "message": "In navigation modes, each degree of climb will add this many units to the cruise throttle. Conversely, each degree of diving will substract from it."
    },
    "minThrottleDownPitch": {
        "message": "Min Throttle Down Pitch"
    },
    "minThrottleDownPitchHelp": {
        "message": "Automatic pitch down angle when throttle is at 0 in angle mode. Progressively applied between cruise throttle and zero throttle."
    },
    "pitchToThrottleSmoothing": {
        "message": "Throttle smoothing"
    },
    "pitchToThrottleSmoothingHelp": {
        "message": "How smoothly the autopilot adjusts the throttle level in response to pitch angle changes [0-9]."
    },
    "pitchToThrottleThreshold": {
        "message": "Instantaneous throttle adjustment threshold"
    },
    "pitchToThrottleThresholdHelp": {
        "message": "The autopilot will instantly adjust the throttle level without smoothing according to pitch to throttle if the pitch angle is more this many centidegrees from the filtered value."
    },
    "loiterRadius": {
        "message": "Loiter radius"
    },
    "loiterDirectionLabel": {
        "message": "Loiter direction"
    },
    "loiterDirectionHelp": {
        "message": "This setting allows you to choose the loiter direction. Selecting YAW allows you to change the loiter direction with the yaw stick."
    },
    "controlSmoothness": {
        "message": "Control Smoothness"
    },
    "controlSmoothnessHelp": {
        "message": "How smoothly the autopilot controls the airplane to correct the navigation error [0-9]."
    },
    "wpTrackingAccuracy": {
        "message": "Waypoint Tracking Accuracy"
    },
    "wpTrackingAccuracyHelp": {
        "message": "Tracking deadband - how closely the craft follows a waypoint track in meters. Lower values track more closely but cause more control corrections. 2 is a good starting point [0-10]."
    },
    "wpTrackingAngle": {
        "message": "Waypoint Tracking Angle"
    },
    "wpTrackingAngleHelp": {
        "message": "The angle the craft approaches the waypoint track. Lower values make the approach longer while higher values can cause overshoot. 60° is a good starting point [30-80]."
    },
    "powerConfiguration": {
        "message": "Battery Estimation Settings"
    },
    "idlePower": {
        "message": "Idle power"
    },
    "idlePowerHelp": {
        "message": "Power draw at zero throttle used for remaining flight time/distance estimation in 0.01W unit"
    },
    "cruisePower": {
        "message": "Cruise power"
    },
    "cruisePowerHelp": {
        "message": "Power draw at cruise throttle used for remaining flight time/distance estimation in 0.01W unit"
    },
    "cruiseSpeed": {
        "message": "Cruise speed"
    },
    "cruiseSpeedHelp": {
        "message": "Speed for the plane/wing at cruise throttle used for remaining flight time/distance estimation in cm/s"
    },
    "rthEnergyMargin": {
        "message": "RTH energy margin"
    },
    "rthEnergyMarginHelp": {
        "message": "Energy margin wanted after getting home (percent of battery energy capacity). Use for the remaining flight time/distance calculation."
    },
    "generalNavigationSettings": {
        "message": "General Navigation Settings"
    },
    "waypointConfiguration": {
        "message": "Waypoint Navigation Settings"
    },
    "wpLoadBoot": {
        "message": "Load Waypoints on Boot"
    },
    "wpLoadBootHelp": {
        "message": "If enabled, Waypoint Missions in EEPROM will be loaded automatically after bootup."
    },
    "wpEnforceAlt": {
        "message": "Enforce Altitude at Waypoint"
    },
    "wpEnforceAltHelp": {
        "message": "Ensures that the altitude at each waypoint is reached before continue to the next one. Craft will hold position [loiter for fixed wing] and climb/decent until the altitude is within the set range [1-2000 cm] from the waypoint altitude. Set to [0] to disable. Fixed wing crafts should not be set below 500cm."
    },
    "waypointRadius": {
        "message": "Waypoint radius"
    },
    "wpRestartMission": {
        "message": "Restart Waypoint Mission"
    },
    "wpRestartMissionHelp": {
        "message": "Sets restart behaviour for a WP mission when interrupted mid mission. START from first WP, RESUME from last active WP or SWITCH between START and RESUME each time WP Mode is reselected ON. SWITCH effectively allows resuming once only from a previous mid mission waypoint after which the mission will restart from the first waypoint."
    },
    "wpTurnSmoothing": {
        "message": "Waypoint Turn Smoothing"
    },
    "wpTurnSmoothingHelp": {
        "message": "Smooths turns during WP missions by switching to a loiter turn at waypoints. When set to ON the craft will reach the waypoint during the turn. When set to ON-CUT the craft will turn inside the waypoint without actually reaching it (cuts the corner)."
    },
    "navMotorStop": {
        "message": "Navigation Motor Stop Override"
    },
    "navMotorStopHelp": {
        "message": "When set to OFF the navigation system will not take over the control of the motor if the throttle is low (motor will stop). When set to OFF_ALWAYS the navigation system will not take over the control of the motor if the throttle was low even when failsafe is triggered. When set to AUTO_ONLY the navigation system will only take over the control of the throttle in autonomous navigation modes (NAV WP and NAV RTH). When set to ALL_NAV (default) the navigation system will take over the control of the motor completely and never allow the motor to stop even when the throttle is low. This setting only has an effect on NAV modes which take control of the throttle when combined with MOTOR_STOP and is likely to cause a stall if fw_min_throttle_down_pitch isn't set correctly or the pitch estimation is wrong for fixed wing models when not set to ALL_NAV."
    },
    "soarMotorStop": {
        "message": "Soaring Mode Motor Stop"
    },
    "soarMotorStopHelp": {
        "message": "Stops motor when Soaring mode enabled."
    },
    "soarPitchDeadband": {
        "message": "Soaring Mode Pitch Deadband"
    },
    "soarPitchDeadbandHelp": {
        "message": "Pitch Angle deadband when soaring mode enabled (deg). Angle mode inactive within deadband allowing pitch to free float whilst soaring."
    },
    "altControlResponse": {
        "message": "Altitude Control Response Factor"
    },
    "altControlResponseHelp": {
        "message": "Adjusts the response of fixed wing altitude control as the target altitude is approached. Higher values will sharpen altitude control response but may also cause excessive overshoot or pitch instability if set too high."
    },
    "waypointRadiusHelp": {
        "message": "This sets the distance away from a waypoint that triggers the waypoint as reached."
    },
    "waypointSafeDistance": {
        "message": "Waypoint safe distance"
    },
    "waypointSafeDistanceHelp": {
        "message": "The maximum distance between the home point and the first waypoint."
    },
    "fixedWingNavigationConfiguration": {
        "message": "Fixed Wing Navigation Settings"
    },
    "fixedWingLandingConfiguration": {
        "message": "Fixed Wing Landing Settings"
    },
    "MissionPlannerOnlyOneLandWp": {
        "message": "You can set only one LAND Waypoint per mission."
    },
    "fwLandApproachLength": {
        "message": "Final approach length"
    },
    "fwLandApproachLengthHelp": {
        "message": "Length of the final approach, also includes the glide and intercept phase. This is the length from the safe home point to the final turn point."
    },
    "fwLandFinalApproachPitch2throttle": {
        "message": "Modifier for pitch to throttle ratio at final approach"
    },
    "fwLandFinalApproachPitch2throttleHelp": {
        "message": "This value is multiplied by the \\"pitch to throttle ratio\\" value during the final approach. Allows the velocity to be reduced."
    },
    "fwLandGlideAlt": {
        "message": "Initial altitude of the glide phase"
    },
    "fwLandGlideAltHelp": {
        "message": "At this altitude (measured from the altitude of the landing point) the engine is switched off and the aircraft glides from here."
    },
    "fwLandFlareAlt": {
        "message": "Initial altitude of the flare phase"
    },
    "fwLandFlareAltHelp": {
        "message": "At this altitude (measured from the altitude of the landing point) the last phase of landing is executed."
    },
    "fwLandGlidePitch": {
        "message": "Pitch value for glide phase"
    },
    "fwLandGlidePitchHelp": {
        "message": "This pitch angle is held during the glide phase."
    },
    "fwLandFlarePitch": {
        "message": "Pitch value for flare phase"
    },
    "fwLandFlarePitchHelp": {
        "message": "This pitch angle is held during the flare phase."
    },
    "fwLandMaxTailwind": {
        "message": "Max. tailwind"
    },
    "fwLandMaxTailwindHelp": {
        "message": "This value is used when no headwind landing is possible and wind speeds below this value are ignored (inaccuracies in INAV wind measurement)."
    },
    "osd_unsupported_msg1": {
        "message": "Your flight controller isn't responding to OSD commands. This probably means that it does not have an integrated OSD."
    },
    "osd_unsupported_msg2": {
        "message": "Note that some flight controllers have an onboard <a href=\\"https://www.youtube.com/watch?v=ikKH_6SQ-Tk\\" target=\\"_blank\\">MinimOSD</a> that can be flashed and configured with <a href=\\"https://github.com/ShikOfTheRa/scarab-osd/releases/latest\\" target=\\"_blank\\">scarab-osd</a>, however the MinimOSD cannot be configured through this interface."
    },
    "osd_elements": {
        "message": "Elements"
    },
    "osd_preview_title": {
        "message": "Preview <span>(drag to change position)</span>"
    },
    "osd_preview_title_drag": {
        "message": ""
    },
    "osd_video_format": {
        "message": "Video Format"
    },
    "osd_craft_name": {
        "message": "Craft Name"
    },
    "osd_pilot_name": {
        "message": "Pilot's Name"
    },
    "osdElement_POWER_SUPPLY_IMPEDANCE": {
        "message": "Power Supply Impedance"
    },
    "osdElement_REMAINING_FLIGHT_TIME": {
        "message": "Remaining Flight Time"
    },
    "osdElement_REMAINING_FLIGHT_DISTANCE": {
        "message": "Remaining Flight Distance"
    },
    "osdElement_THROTTLE_GAUGE": {
        "message": "Throttle Gauge"
    },
    "osdElement_THROTTLE_POSITION": {
        "message": "Throttle Position"
    },
    "osdElement_SCALED_THROTTLE_POSITION": {
        "message": "Scaled Throttle Position"
    },
    "osdElement_CRAFT_NAME": {
        "message": "Craft Name"
    },
    "osdElement_PILOT_NAME": {
        "message": "Pilot Name"
    },
    "osdElement_PILOT_LOGO": {
        "message": "Pilot Logo"
    },
    "osdElement_FLYMODE": {
        "message": "Flymode"
    },
    "osdElement_HEADING": {
        "message": "Heading"
    },
    "osdElement_HEADING_GRAPH": {
        "message": "Heading Graph"
    },
    "osdElement_AIR_SPEED": {
        "message": "Air Speed"
    },
    "osdElement_MIN_GROUND_SPEED": {
        "message": "Min Ground Speed"
    },
    "osdElement_GLIDE_TIME": {
        "message": "Glide Time"
    },
    "osdElement_GLIDE_RANGE": {
        "message": "Glide Range"
    },
    "osdElement_MISSION_INFO": {
        "message": "Mission Info"
    },
    "osdElement_VERSION": {
        "message": "Version"
    },
    "osdElement_MULTI FUNCTION STATUS": {
        "message": "Multi Function Status"
    },
    "osdElement_BLACKBOX": {
        "message": "Blackbox"
    },
    "osdElement_ALTITUDE": {
        "message": "Altitude"
    },
    "osdElement_VARIO": {
        "message": "Vario"
    },
    "osdElement_ONTIME": {
        "message": "Ontime"
    },
    "osdElement_FLYTIME": {
        "message": "Flytime"
    },
    "osdElement_CROSSHAIRS": {
        "message": "Crosshairs"
    },
    "osdElement_ARTIFICIAL_HORIZON": {
        "message": "Artificial Horizon"
    },
    "osdElement_HORIZON_SIDEBARS": {
        "message": "Horizon Sidebars"
    },
    "osdElement_PITCH_ANGLE": {
        "message": "Pitch Angle"
    },
    "osdElement_ROLL_ANGLE": {
        "message": "Roll Angle"
    },
    "osdElement_CURRENT_DRAW": {
        "message": "Current Draw"
    },
    "osdElement_WH_DRAWN": {
        "message": "Wh Drawn"
    },
    "osdElement_POWER": {
        "message": "Power"
    },
    "osdElement_CLIMB_EFFICIENCY": {
        "message": "Climb Efficiency"
    },
    "osdElement_LONGITUDE": {
        "message": "Longitude"
    },
    "osdElement_LATITUDE": {
        "message": "Latitude"
    },
    "osdElement_DIRECTION_TO_HOME": {
        "message": "Direction to Home"
    },
    "osdElement_HOME_HEADING_ERROR": {
        "message": "Home Heading Error"
    },
    "osdElement_DISTANCE_TO_HOME": {
        "message": "Distance to Home"
    },
    "osdElement_ODOMETER": {
        "message": "Odometer"
    },
    "osdElement_COURSE_HOLD_ERROR": {
        "message": "Course Hold Error"
    },
    "osdElement_COURSE_HOLD_ADJUSTMENT": {
        "message": "Course Hold Adjustment"
    },
    "osdElement_GROUND COURSE": {
        "message": "Ground Course"
    },
    "osdElement_ADSB_WARNING_MESSAGE": {
        "message": "Adsb Warning Message"
    },
    "osdElement_ADSB_INFO": {
        "message": "Adsb Info"
    },
    "osdElement_CROSS TRACK ERROR": {
        "message": "Cross Track Error"
    },
    "osdElement_RX_POWER_DOWNLINK": {
        "message": "Rx Power Downlink"
    },
    "osdElement_RX_BAND": {
        "message": "Rx Band"
    },
    "osdElement_RX_MODE": {
        "message": "Rx Mode"
    },
    "osdElement_CUSTOM_ELEMENT_1": {
        "message": "Custom Element 1"
    },
    "osdElement_CUSTOM_ELEMENT_2": {
        "message": "Custom Element 2"
    },
    "osdElement_CUSTOM_ELEMENT_3": {
        "message": "Custom Element 3"
    },
    "osdElement_CUSTOM_ELEMENT_4": {
        "message": "Custom Element 4"
    },
    "osdElement_CUSTOM_ELEMENT_5": {
        "message": "Custom Element 5"
    },
    "osdElement_CUSTOM_ELEMENT_6": {
        "message": "Custom Element 6"
    },
    "osdElement_CUSTOM_ELEMENT_7": {
        "message": "Custom Element 7"
    },
    "osdElement_CUSTOM_ELEMENT_8": {
        "message": "Custom Element 8"
    },
    "osdElement_HEADING_P": {
        "message": "Heading P"
    },
    "osdElement_BOARD_ALIGNMENT_ROLL": {
        "message": "Board Alignment Roll"
    },
    "osdElement_BOARD_ALIGNMENT_PITCH": {
        "message": "Board Alignment Pitch"
    },
    "osdElement_THROTTLE_EXPO": {
        "message": "Throttle Expo"
    },
    "osdElement_STABILIZED.RC_EXPO": {
        "message": "Stabilized.rc Expo"
    },
    "osdElement_STABILIZED.RC_YAW_EXPO": {
        "message": "Stabilized.rc Yaw Expo"
    },
    "osdElement_STABILIZED.PITCH_RATE": {
        "message": "Stabilized.pitch Rate"
    },
    "osdElement_STABILIZED.ROLL_RATE": {
        "message": "Stabilized.roll Rate"
    },
    "osdElement_STABILIZED.YAW_RATE": {
        "message": "Stabilized.yaw Rate"
    },
    "osdElement_MANUAL_RC_EXPO": {
        "message": "Manual Rc Expo"
    },
    "osdElement_MANUAL_RC_YAW_EXPO": {
        "message": "Manual Rc Yaw Expo"
    },
    "osdElement_MANUAL_PITCH_RATE": {
        "message": "Manual Pitch Rate"
    },
    "osdElement_MANUAL_ROLL_RATE": {
        "message": "Manual Roll Rate"
    },
    "osdElement_MANUAL_YAW_RATE": {
        "message": "Manual Yaw Rate"
    },
    "osdElement_NAV_FW_CRUISE_THROTTLE": {
        "message": "Nav Fw Cruise Throttle"
    },
    "osdElement_NAV_FW_PITCH_TO_THROTTLE": {
        "message": "Nav Fw Pitch to Throttle"
    },
    "osdElement_FW_MIN_THROTTLE_DOWN_PITCH_ANGLE": {
        "message": "Fw Min Throttle Down Pitch Angle"
    },
    "osdElement_THRUST_PID_ATTENUATION": {
        "message": "Thrust Pid Attenuation"
    },
    "osdElement_CONTROL_SMOOTHNESS": {
        "message": "Control Smoothness"
    },
    "osdElement_TPA_TIME_CONSTANT": {
        "message": "Tpa Time Constant"
    },
    "osdElement_FW_LEVEL_TRIM": {
        "message": "Fw Level Trim"
    },
    "osdElement_MISSION_INDEX": {
        "message": "Mission Index"
    },
    "osdElement_FW_ALT_CONTROL_RESPONSE": {
        "message": "Fw Alt Control Response"
    },
    "osdElement_PILOT_LOGO_HELP": {
        "message": "Shows your small pilot logo in the OSD, where you position it. This requires a custom font with your pilot logo."
    },
    "osd_use_pilot_logo": {
        "message": "Use pilot logo"
    },
    "osd_use_large_pilot_logo_help": {
        "message": "Use your large pilot logo with/instead of the INAV logo. This requires a custom font with your pilot logo. This is seen on the arming screen."
    },
    "osd_units": {
        "message": "Units"
    },
    "osd_main_voltage_decimals": {
        "message": "Voltage Decimals"
    },
    "osd_decimals_altitude": {
        "message": "Altitude Decimals"
    },
    "osd_decimals_distance": {
        "message": "Distance Decimals"
    },
    "osd_mah_precision": {
        "message": "mAh Precision"
    },
    "osd_coordinate_digits": {
        "message": "Coordinate Digits"
    },
    "osd_plus_code_digits": {
        "message": "Plus Code Digits"
    },
    "osd_plus_code_short": {
        "message": "Plus Code Remove Leading Digits"
    },
    "osd_esc_rpm_precision": {
        "message": "ESC RPM precision"
    },
    "osd_esc_rpm_precision_help": {
        "message": "The number of digits shown in the RPM display. If the RPM is higher than the number of digits, it will be shown in thousand RPM with as many decimal places as allowed."
    },
    "osd_crosshairs_style": {
        "message": "Crosshairs Style"
    },
    "osd_horizon_offset": {
        "message": "AHI & HUD offset"
    },
    "osd_horizon_offset_help": {
        "message": "Move the HUD and AHI up or down on the OSD to get it level with the actual horizon. The AHI can appear high or low depending on the camera angle in flight. <span style='color:red;'>NOTE: </span> This does not work with the Pixel OSD. For that use the \`osd_ahi_vertical_offset\` command in the CLI."
    },
    "osd_left_sidebar_scroll": {
        "message": "Left Sidebar Scroll"
    },
    "osd_right_sidebar_scroll": {
        "message": "Right Sidebar Scroll"
    },
    "osd_crsf_lq_format": {
        "message": "Crossfire LQ Format"
    },
    "osd_sidebar_scroll_arrows": {
        "message": "Sidebar Scroll Arrows"
    },
    "osd_home_position_arm_screen": {
        "message": "Home Position on Arming Screen"
    },
    "osd_hud_settings": {
        "message": "Heads-up Display settings"
    },
    "osd_custom_element_settings": {
        "message": "Custom OSD elements"
    },
    "osd_custom_element_settings_HELP": {
        "message": "For comprehensive details on how to use Custom OSD elements. Click this ?"
    },
    "osd_custom_element_settings_icons_HELP": {
        "message": "You can find the icon numbers by clicking this help button."
    },
    "custom_element": {
        "message": "Custom element"
    },
    "osd_hud_settings_HELP": {
        "message": "This section allows tweaking the behavior of HUD elements."
    },
    "osd_hud_radar_disp": {
        "message": "Maximum number of radar elements on screen."
    },
    "osd_hud_radar_disp_help": {
        "message": "This is used for INAV Radar/FormationFlight. 0 disables this feature."
    },
    "osd_hud_radar_range_min": {
        "message": "Minimum radar range"
    },
    "osd_hud_radar_range_min_help": {
        "message": "Radar aircrafts closer than this will not be displayed in the HUD."
    },
    "osd_hud_radar_range_max": {
        "message": "Maximum radar range"
    },
    "osd_hud_radar_range_max_help": {
        "message": "Radar aircrafts further away than this will not be displayed in the HUD."
    },
    "osd_hud_wp_disp": {
        "message": "Maximum number of waypoint elements on screen."
    },
    "osd_hud_wp_disp_help": {
        "message": "Number of Wayponts to show on screen. 0 disables this feature."
    },
    "osd_camera_uptilt": {
        "message": "Camera uptilt"
    },
    "osd_camera_uptilt_help": {
        "message": "Set the camera uptilt for the FPV camera in degrees, positive is up, negative is down, relative to the horizontal. Used for correct display of HUD items and AHI (when enabled with osd_ahi_camera_uptilt_comp=ON)."
    },
    "osd_camera_fov_h": {
        "message": "Camera Horizontal FOV"
    },
    "osd_camera_fov_h_help": {
        "message": "Camera Horizontal Field of View in Degrees. It is used to calculate the position of elements in the HUD display."
    },
    "osd_camera_fov_v": {
        "message": "Camera Vertical FOV"
    },
    "osd_camera_fov_v_help": {
        "message": "Camera Vertical Field of View in Degrees. It is used to calculate the position of elements in the HUD display."
    },
    "osd_alarms": {
        "message": "Alarms"
    },
    "osdLayoutDefault": {
        "message": "Default Layout"
    },
    "osdLayoutAlternative": {
        "message": "Alternative Layout #$1"
    },
    "osdUnitImperial": {
        "message": "Imperial"
    },
    "osdUnitMetric": {
        "message": "Metric"
    },
    "osdUnitMetricMPH": {
        "message": "Metric + MPH"
    },
    "osdUnitMetricMPHTip": {
        "message": "Use metric units except for the speed, which is displayed in miles per hour."
    },
    "osdUnitUK": {
        "message": "UK"
    },
    "osdUnitUKTip": {
        "message": "Use imperial units except for the temperature, which is displayed in Celsius."
    },
    "osdUnitGA": {
        "message": "General Aviation"
    },
    "osdUnitGATip": {
        "message": "Use GA standard units (non-SI): Nautical Miles, Feet, Knots, Celcius."
    },
    "osd_rssi_alarm": {
        "message": "RSSI (%)"
    },
    "osdAlarmBATT_CAP": {
        "message": "Used Battery"
    },
    "osdAlarmBATT_CAP_HELP": {
        "message": "The battery capacity used indicator (mah drawn) will flash when the total consumed mah are greater than this value. Requires a current sensor. Zero disables this alarm."
    },
    "osd_time_alarm": {
        "message": "Fly Time (minutes)"
    },
    "osd_alt_alarm": {
        "message": "Altitude"
    },
    "osd_dist_alarm": {
        "message": "Distance"
    },
    "osdAlarmDIST_HELP": {
        "message": "The distance to home indicator will flash when the distance is greater than this value. Zero disables this alarm."
    },
    "osd_neg_alt_alarm": {
        "message": "Negative Altitude"
    },
    "osdAlarmMAX_NEG_ALTITUDE_HELP": {
        "message": "The altitude indicator will flash when altitude is negative and its absolute value is greater than this alarm. Useful when taking off from elevated places. Zero disables this alarm."
    },
    "osd_airspeed_min_alarm": {
        "message": "Minimum Airspeed"
    },
    "osd_airspeed_min_alarm_HELP": {
        "message": "The airspeed indicator will flash when the airspeed is below this threshold. Zero disables this alarm."
    },
    "osd_airspeed_max_alarm": {
        "message": "Maximum Airspeed"
    },
    "osd_airspeed_max_alarm_HELP": {
        "message": "The airspeed indicator will flash when the airspeed is above this threshold. Zero disables this alarm."
    },
    "osd_gforce_alarm": {
        "message": "g force"
    },
    "osdAlarmGFORCE_HELP": {
        "message": "The g force element will start blinking when greater than this value"
    },
    "osd_gforce_axis_alarm_min": {
        "message": "g force axis min"
    },
    "osdAlarmGFORCE_AXIS_MIN_HELP": {
        "message": "The axes g force elements will start blinking when lower than this value"
    },
    "osd_gforce_axis_alarm_max": {
        "message": "g force axis max"
    },
    "osdAlarmGFORCE_AXIS_MAX_HELP": {
        "message": "The axes g force elements will start blinking when greater than this value"
    },
    "osdAlarmADSB_MAX_DISTANCE_WARNING": {
        "message": "Distance in meters of ADSB aircraft that is displayed"
    },
    "osdAlarmADSB_MAX_DISTANCE_ALERT": {
        "message": "Distance inside which ADSB data flashes for proximity warning"
    },
    "osd_current_alarm": {
        "message": "Current (A)"
    },
    "osdAlarmCURRENT_HELP": {
        "message": "The current draw element will start blinking when the consumption is greater than this value. Zero disables this alarm."
    },
    "osd_imu_temp_alarm_min": {
        "message": "Minimum IMU temperature"
    },
    "osd_imu_temp_alarm_max": {
        "message": "Maximum IMU temperature"
    },
    "osd_baro_temp_alarm_min": {
        "message": "Minimum baro temperature"
    },
    "osd_baro_temp_alarm_max": {
        "message": "Maximum baro temperature"
    },
    "osd_esc_temp_alarm_min": {
        "message": "Minimum ESC temperature"
    },
    "osd_esc_temp_alarm_max": {
        "message": "Maximum ESC temperature"
    },
    "osd_snr_alarm": {
        "message": "SNR Alarm Level"
    },
    "osdalarmSNR_HELP": {
        "message": "SNR is only shown below this value. 0dB (1:1 ratio), indicates that received signal equals noise floor."
    },
    "osd_link_quality_alarm": {
        "message": "Link Quality Alarm"
    },
    "osdalarmLQ_HELP": {
        "message": "For Crossfire use 70%. For Tracer use 50%."
    },
    "osd_rssi_dbm_alarm": {
        "message": "RSSI dBm Alarm"
    },
    "osd_adsb_distance_warning": {
        "message": "ADSB distance warning"
    },
    "osd_adsb_distance_alert": {
        "message": "ADSB distance alert"
    },
    "osd_rssi_dbm_alarm_HELP": {
        "message": "RSSI indicator blinks below this value. Range: [-130,0]. Zero disables this alarm."
    },
    "osdGroupGeneral": {
        "message": "General"
    },
    "osdGroupAltitude": {
        "message": "Altitude"
    },
    "osdGroupTimers": {
        "message": "Timers"
    },
    "osdGroupGForce": {
        "message": "G force"
    },
    "osdGroupTemperature": {
        "message": "Temperature"
    },
    "osdGroupAttitude": {
        "message": "Attitude"
    },
    "osdGroupCurrentMeter": {
        "message": "Current Meter"
    },
    "osdGroupGPS": {
        "message": "GPS"
    },
    "osdGroupPowerLimits": {
        "message": "Power Limits"
    },
    "osdGroupPIDs": {
        "message": "RC Adjustable Values"
    },
    "osdGroupPIDOutputs": {
        "message": "PID Controllers Outputs"
    },
    "osdGroupVTX": {
        "message": "VTX"
    },
    "osdGroupRx": {
        "message": "RX Statistics"
    },
    "osdGroupMapsAndRadars": {
        "message": "Maps & Radars"
    },
    "osdGroupMapsAndRadars_HELP": {
        "message": "Maps & radars allow laying out additional elements on top of them as long as they don't overlap any of the map parts visible in the preview."
    },
    "osdElement_ONTIME_FLYTIME": {
        "message": "On Time / Fly Time"
    },
    "osdElement_RSSI_VALUE": {
        "message": "RSSI (Signal Strength)"
    },
    "osdElement_RSSI_VALUE_HELP": {
        "message": "Shows the quality of the signal received from the RC radio (the higher the better)."
    },
    "osdElement_MAIN_BATT_VOLTAGE": {
        "message": "Battery Voltage"
    },
    "osdElement_SAG_COMP_MAIN_BATT_VOLTAGE": {
        "message": "Sag-compensated Battery Voltage"
    },
    "osdElement_SAG_COMP_MAIN_BATT_VOLTAGE_HELP": {
        "message": "Calculated voltage the battery should be at without load (simulates ideal battery)"
    },
    "osdElement_MESSAGES": {
        "message": "System Messages"
    },
    "osdElement_MESSAGES_HELP": {
        "message": "Shows different system messages like warnings, hardware failures and extended details of the current flight mode (e.g. AUTOTUNE and AUTOTRIM modes and RTH stages)."
    },
    "osdElement_MAIN_BATT_CELL_VOLTAGE": {
        "message": "Battery Cell Voltage"
    },
    "osdElement_SAG_COMP_MAIN_BATT_CELL_VOLTAGE": {
        "message": "Sag-compensated Battery Cell Voltage"
    },
    "osdElement_SAG_COMP_MAIN_BATT_CELL_VOLTAGE_HELP": {
        "message": "Calculated average cell voltage the battery should be at without load (simulates ideal battery)"
    },
    "osdElement_MAIN_BATT_REMAINING_PERCENTAGE": {
        "message": "Battery Remaining Percentage"
    },
    "osdElement_MAIN_BATT_REMAINING_CAPACITY": {
        "message": "Battery Remaining Capacity"
    },
    "osdElement_REMAINING_FLIGHT_TIME_HELP": {
        "message": "Estimated remaining flight time before the aircraft needs to go back home based on remaining battery energy, average power and distance to home (Fixed wing only, please read the documentation)"
    },
    "osdElement_REMAINING_FLIGHT_DISTANCE_HELP": {
        "message": "Estimated remaining flight travel distance before the aircraft needs to go back home based on remaining battery energy, average power and distance to home (Fixed wing only, please read the documentation)"
    },
    "osdElement_MAIN_BATT_CELL_VOLTAGE_HELP": {
        "message": "Shows the average cell voltage from the main battery"
    },
    "osdElement_MAH_DRAWN": {
        "message": "mAh drawn"
    },
    "osdElement_EFFICIENCY_MAH": {
        "message": "Efficiency mAh/Km"
    },
    "osdElement_EFFICIENCY_WH": {
        "message": "Efficiency Wh/Km"
    },
    "osdElement_PLIMIT_REMAINING_BURST_TIME": {
        "message": "Remaining burst time"
    },
    "osdElement_PLIMIT_ACTIVE_CURRENT_LIMIT": {
        "message": "Active current limit"
    },
    "osdElement_PLIMIT_ACTIVE_POWER_LIMIT": {
        "message": "Active power limit"
    },
    "osdElement_THROTTLE_POSITION_HELP": {
        "message": "Shows the throttle stick position in flight modes where <i>it</i> controls the throttle output. On navigation modes, it shows the throttle value commanded by INAV."
    },
    "osdElement_SCALED_THROTTLE_POSITION_HELP": {
        "message": "Shows the throttle stick position in flight modes where <i>it</i> controls the throttle output. On navigation modes, it shows the throttle value commanded by INAV. This throttle is scaled based on the idle throttle and max throttle."
    },
    "osdElement_GPS_SPEED": {
        "message": "Ground Speed"
    },
    "osdElement_GPS_SPEED_HELP": {
        "message": "Shows GPS ground speed."
    },
    "osdElement_GPS_MAX_SPEED": {
        "message": "GPS Maximum Speed"
    },
    "osdElement_GPS_MAX_SPEED_HELP": {
        "message": "Shows highest GPS ground speed."
    },
    "osdElement_MSL_ALTITUDE": {
        "message": "MSL Altitude"
    },
    "osdElement_MSL_ALTITUDE_HELP": {
        "message": "Altitude above Mean Sea Level"
    },
    "osdElement_3D_SPEED": {
        "message": "3D Speed"
    },
    "osdElement_3D_SPEED_HELP": {
        "message": "Shows 3D speed considering both horizontal and vertical speed."
    },
    "osdElement_3D_MAX_SPEED": {
        "message": "3D Maximum Speed"
    },
    "osdElement_3D_MAX_SPEED_HELP": {
        "message": "Shows highest 3D speed considering both horizontal and vertical speed."
    },
    "osdElement_AIR_MAX_SPEED": {
        "message": "Maximum Air Speed"
    },
    "osdElement_AIR_MAX_SPEED_HELP": {
        "message": "Shows highest air speed."
    },
    "osdElement_GPS_SATS": {
        "message": "GPS Satellites"
    },
    "osdElement_GPS_SATS_HELP": {
        "message": "Shows the number of GPS satellites located by the GPS receiver."
    },
    "osdElement_GPS_HDOP": {
        "message": "GPS HDOP"
    },
    "osdElement_GPS_HDOP_HELP": {
        "message": "Shows the Horizontal Dilution Of Precision from the GPS. The lower, the more accurate the GPS fix is."
    },
    "osdElement_PLUS_CODE": {
        "message": "Plus Code (latitude + longitude)"
    },
    "osdElement_PLUS_CODE_HELP": {
        "message": "Plus codes encode both latitude and longitude on a single value that can be entered directly in Google Maps. It provides the same level of precision than latitude and longitude while using less screen space."
    },
    "osdElement_AZIMUTH": {
        "message": "Azimuth"
    },
    "osdElement_AZIMUTH_HELP": {
        "message": "Azimuth is the direction of the aircraft in relation to the home point. It's useful to keep the aircraft on the correct course or to keep the aircraft in front of a fixed directional antenna."
    },
    "osdElement_TRIP_DIST": {
        "message": "Trip distance"
    },
    "osdElement_VARIO_HELP": {
        "message": "Shows vertical speed using up or down arrows. Each arrow represents 10cm (~4 inches) per second."
    },
    "osdElement_VERTICAL_SPEED_INDICATOR": {
        "message": "Vertical Speed Indicator"
    },
    "osdElement_VERTICAL_SPEED_INDICATOR_HELP": {
        "message": "Shows vertical speed using a number"
    },
    "osdElement_G_FORCE": {
        "message": "g force"
    },
    "osdElement_G_FORCE_HELP": {
        "message": "Shows the g force taking into account all axes"
    },
    "osdElement_G_FORCE_X": {
        "message": "Longitudinal g force in body frame (X)"
    },
    "osdElement_G_FORCE_X_HELP": {
        "message": "Shows the g force in the X axis (longitudinal)"
    },
    "osdElement_G_FORCE_Y": {
        "message": "Lateral g force in body frame (Y)"
    },
    "osdElement_G_FORCE_Y_HELP": {
        "message": "Shows the g force in the Y axis (lateral)"
    },
    "osdElement_G_FORCE_Z": {
        "message": "Vertical g force in body frame (Z)"
    },
    "osdElement_G_FORCE_Z_HELP": {
        "message": "Shows the g force in the Z axis (vertical)"
    },
    "osdElement_ROLL_PIDS": {
        "message": "Roll PIDs"
    },
    "osdElement_PITCH_PIDS": {
        "message": "Pitch PIDs"
    },
    "osdElement_YAW_PIDS": {
        "message": "Yaw PIDs"
    },
    "osdElement_ONTIME_FLYTIME_HELP": {
        "message": "Shows \\"On Time\\" while unarmed and \\"Fly Time\\" while armed."
    },
    "osdElement_RTC_TIME": {
        "message": "Time of the Day"
    },
    "osdElement_RTC_TIME_HELP": {
        "message": "Shows the current time, as retrieved from the GPS or set via the radio."
    },
    "osdElement_RC_SOURCE": {
        "message": "RC source"
    },
    "osdElement_RC_SOURCE_HELP": {
        "message": "Shows the current RC source, STD or MSP (useful when using MSP override)"
    },
    "osdElement_VTX_POWER": {
        "message": "Video TX power level"
    },
    "osdElement_VTX_POWER_HELP": {
        "message": "Shows the current VTX power level. Blinks when the corresponding RC adjustment is selected"
    },
    "osdElement_ESC_RPM": {
        "message": "Motor RPM from ESC telemetry"
    },
    "osdElement_GLIDESLOPE": {
        "message": "Glideslope"
    },
    "osdElement_GLIDESLOPE_HELP": {
        "message": "Amount of horizontal distance traveled per unit of lost altitude"
    },
    "osdElement_PAN_SERVO_CENTRED": {
        "message": "Pan Servo Centred"
    },
    "osdElement_PAN_SERVO_CENTRED_HELP": {
        "message": "Displays if the pan servo is centred (0) or offset (arrows). Check the <b>osd_pan_servo_</b> settings for configuring the pan servo."
    },
    "osdElement_VTX_CHANNEL": {
        "message": "Video TX Band and Channel"
    },
    "osdElement_VTX_CHANNEL_HELP": {
        "message": "Shows the current band and channel of the VTX. Requires either a VTX with SmartAudio or Tramp or either a VTX integrated in the flight controller."
    },
    "osdElement_RSSI_DBM": {
        "message": "RX RSSI in dBm"
    },
    "osdElement_LQ_UPLINK": {
        "message": "RX Uplink Quality %"
    },
    "osdElement_LQ_UPLINK_HELP": {
        "message": "If using CRSF, use Crossfire LQ Format setting to select format type."
    },
    "osdElement_LQ_DOWNLINK": {
        "message": "RX Downlink Quality %"
    },
    "osdElement_SNR_DB": {
        "message": "RX Uplink SNR in dB"
    },
    "osdElement_SNR_DB_HELP": {
        "message": "Shown only when SNR goes below alarm level. At 0dB, received signal level equals noise floor level."
    },
    "osdElement_TX_POWER_UPLINK": {
        "message": "TX power in mW"
    },
    "osdElement_OSD_RX_POWER_DOWNLINK": {
        "message": "RX power in mW"
    },
    "osdElement_MAP_NORTH": {
        "message": "Map (Up is north)"
    },
    "osdElement_MAP_TAKEOFF": {
        "message": "Map (Up is the takeoff direction)"
    },
    "osdElement_RADAR": {
        "message": "Radar"
    },
    "osdElement_MAP_SCALE": {
        "message": "Map Scale"
    },
    "osdElement_MAP_SCALE_HELP": {
        "message": "Scale of the currently shown map/radar."
    },
    "osdElement_MAP_REFERENCE": {
        "message": "Map Reference"
    },
    "osdElement_MAP_REFERENCE_HELP": {
        "message": "Reference (direction that points up) of the current map. N for North and T for takeoff direction."
    },
    "osdElement_FORMATION_FLIGHT": {
        "message": "Inav radar fixed"
    },
    "osdElement_FORMATION_FLIGHT_HELP": {
        "message": "The closest aircraft from Inav radar/Formation flight"
    },
    "osdElement_WIND_SPEED_HORIZONTAL": {
        "message": "Horizontal wind speed"
    },
    "osdElement_WIND_SPEED_HORIZONTAL_HELP": {
        "message": "Shows estimated horizontal wind speed and direction."
    },
    "osdElement_WIND_SPEED_VERTICAL": {
        "message": "Vertical wind speed"
    },
    "osdElement_WIND_SPEED_VERTICAL_HELP": {
        "message": "Shows estimated vertical wind speed and direction (up or down)."
    },
    "osdElement_ACTIVE_PROFILE": {
        "message": "Show the active profile"
    },
    "osdElement_LEVEL_PIDS": {
        "message": "Level PIDs"
    },
    "osdElement_POS_XY_PIDS": {
        "message": "Position XY PIDs"
    },
    "osdElement_POS_Z_PIDS": {
        "message": "Position Z PIDs"
    },
    "osdElement_VEL_XY_PIDS": {
        "message": "Velocity XY PIDs"
    },
    "osdElement_VEL_Z_PIDS": {
        "message": "Velocity Z PIDs"
    },
    "osdElement_FW_ALT_PID_OUTPUTS": {
        "message": "FW Altitude PID controller outputs"
    },
    "osdElement_FW_POS_PID_OUTPUTS": {
        "message": "FW Position PID controller outputs"
    },
    "osdElement_MC_VEL_X_PID_OUTPUTS": {
        "message": "MC Velocity X PID controller outputs"
    },
    "osdElement_MC_VEL_Y_PID_OUTPUTS": {
        "message": "MC Velocity Y PID controller outputs"
    },
    "osdElement_MC_VEL_Z_PID_OUTPUTS": {
        "message": "MC Velocity Z PID controller outputs"
    },
    "osdElement_MC_POS_XYZ_P_OUTPUTS": {
        "message": "MC Position XYZ P controllers outputs"
    },
    "osdElement_IMU_TEMPERATURE": {
        "message": "IMU Temperature"
    },
    "osdElement_IMU_TEMPERATURE_HELP": {
        "message": "Temperature of the IMU"
    },
    "osdElement_BARO_TEMPERATURE": {
        "message": "Baro Temperature"
    },
    "osdElement_BARO_TEMPERATURE_HELP": {
        "message": "Temperature of the barometer"
    },
    "osdElement_ESC_TEMPERATURE": {
        "message": "ESC Temperature"
    },
    "osdElement_ESC_TEMPERATURE_HELP": {
        "message": "Temperature of the ESC read from DSHOT telemetry"
    },
    "osdGroupSwitchIndicators": {
        "message": "Switch Indicators"
    },
    "osdElement_SWITCH_INDICATOR_0": {
        "message": "Switch Indicator 1"
    },
    "osdElement_SWITCH_INDICATOR_1": {
        "message": "Switch Indicator 2"
    },
    "osdElement_SWITCH_INDICATOR_2": {
        "message": "Switch Indicator 3"
    },
    "osdElement_SWITCH_INDICATOR_3": {
        "message": "Switch Indicator 4"
    },
    "osd_pan_servo_settings": {
        "message": "Pan Servo OSD Settings"
    },
    "osd_pan_servo_settings_HELP": {
        "message": "This section enables and configures the pan servo offset feature. It is used to keep OSD elements, like the home arrow and POIs, pointing to or in the correct direction. Even when you have panned the camera around."
    },
    "osdPanServoIndex": {
        "message": "Pan Servo Output"
    },
    "osdPanServoIndex_HELP": {
        "message": "Set the is to the output number of the pan servo; as shown in the mixer outputs table. For example output S6."
    },
    "osdPanServoRangeDecadegrees": {
        "message": "Total degrees of movement of the pan servo"
    },
    "osdPanServoRangeDecadegrees_HELP": {
        "message": "Degrees of pan servo rotation. A servo with 180 degrees of rotation typically needs 180 for this setting. Make the value negative to inverse the direction."
    },
    "osdPanServoIndicatorShowDegrees": {
        "message": "Show degrees of offset next to pan indicator"
    },
    "osdPanServoOffcentreWarning": {
        "message": "Off-centre warning"
    },
    "osdPanServoOffcentreWarning_HELP": {
        "message": "Degrees either side of the pan servo centre; where it is assumed camera is wanted to be facing forwards, but isn't at 0. If in this range and not 0 for longer than 10 seconds, the pan servo offset OSD element will blink. 0 means the warning is disabled."
    },
    "osdGroupOSDCustomElements": {
        "message": "OSD Custom Elements"
    },
    "osdGroupGVars": {
        "message": "Global Variables"
    },
    "osdElement_GVAR_0": {
        "message": "Global Variable 0"
    },
    "osdElement_GVAR_1": {
        "message": "Global Variable 1"
    },
    "osdElement_GVAR_2": {
        "message": "Global Variable 2"
    },
    "osdElement_GVAR_3": {
        "message": "Global Variable 3"
    },
    "osdElement_SENSOR1_TEMPERATURE": {
        "message": "Temperature sensor 1"
    },
    "osdElement_SENSOR2_TEMPERATURE": {
        "message": "Temperature sensor 2"
    },
    "osdElement_SENSOR3_TEMPERATURE": {
        "message": "Temperature sensor 3"
    },
    "osdElement_SENSOR4_TEMPERATURE": {
        "message": "Temperature sensor 4"
    },
    "osdElement_SENSOR5_TEMPERATURE": {
        "message": "Temperature sensor 5"
    },
    "osdElement_SENSOR6_TEMPERATURE": {
        "message": "Temperature sensor 6"
    },
    "osdElement_SENSOR7_TEMPERATURE": {
        "message": "Temperature sensor 7"
    },
    "osdElement_SENSOR8_TEMPERATURE": {
        "message": "Temperature sensor 8"
    },
    "osdSettingMainVoltageDecimals": {
        "message": "Main voltage decimals"
    },
    "osdElement_OSD_RANGEFINDER": {
        "message": "Rangefinder distance"
    },
    "osdElement_COURSE_NEXT_GEOZONE": {
        "message": "Course to next Geozone"
    },
    "osdElement_HOR_DIST_TO_NEXT_GEOZONE": {
        "message": "Horizontal distance to the next geozone"
    },
    "osdElement_VERT_DIST_TO_NEXT_GEOZONE": {
        "message": "Vertical distance to the next geozone"
    },
    "osdSettingPLUS_CODE_DIGITS_HELP": {
        "message": "Precision at the equator: 10=13.9x13.9m; 11=2.8x3.5m; 12=56x87cm; 13=11x22cm."
    },
    "osdSettingPLUS_CODE_SHORT_HELP": {
        "message": "Removing 2, 4 and 6 leading digits requires a reference location within, respectively, ~800km, ~40km and ~2km to recover the original coordinates."
    },
    "osdSettingCRSF_LQ_FORMAT_HELP": {
        "message": "TYPE1 shows LQ% as used by TBS hardware. TYPE2 shows RF Profile Modes (2=150Hz, 1=50Hz, 0=4Hz update rates) and LQ % [0..100%]. Tracer shows RFMode 1 (1=250Hz) and LQ % [0..100%]."
    },
    "osd_video_show_guides": {
        "message": "Show preview guides"
    },
    "osd_video_HELP": {
        "message": "For HD: red lines show 4:3 screen, HDZero: keep within the blue box for a higher refresh rate, AUTO/PAL: green line is NTSC limit."
    },
    "osd_dji_HD_FPV": {
        "message": "DJI HD FPV"
    },
    "osd_dji_hide_unsupported": {
        "message": "Hide unsupported elements"
    },
    "osd_dji_ESC_temp": {
        "message": "Source of <i>ESC Temperature</i>"
    },
    "osd_dji_RSSI_source": {
        "message": "Source of <i>RSSI</i>"
    },
    "osd_dji_GPS_source": {
        "message": "Source of <i>GPS Speed</i>"
    },
    "osd_dji_speed_source": {
        "message": "Source of <i>3D Speed</i>"
    },
    "osd_dji_use_craft_name_elements": {
        "message": "Use craft name for messages and additional elements.</span><br/>Elements in <span class=\\"blue\\">blue</span> appear in Craft Name."
    },
    "osd_dji_adjustments": {
        "message": "Show adjustments in Craft Name"
    },
    "osd_dji_cn_alternating_duration": {
        "message": "Craft Name alternating duration (in 1/10 sec)"
    },
    "osd_switch_indicator_settings": {
        "message": "Switch Indicator Settings"
    },
    "osd_switch_indicator_settings_HELP": {
        "message": "It is recommended to use the Custom OSD Elements as a replacemtent for switch indicators. They are much more powerful. Click to see an example."
    },
    "osd_switch_indicators_align_left": {
        "message": "Align switch names to left of switches"
    },
    "osdSwitchInd0": {
        "message": "Switch 1"
    },
    "osdSwitchInd1": {
        "message": "Switch 2"
    },
    "osdSwitchInd2": {
        "message": "Switch 3"
    },
    "osdSwitchInd3": {
        "message": "Switch 4"
    },
    "osd_font_default": {
        "message": "Default"
    },
    "osd_font_vision": {
        "message": "Vision"
    },
    "osd_font_impact": {
        "message": "Impact"
    },
    "osd_font_impact_mini": {
        "message": "Impact mini"
    },
    "osd_font_clarity": {
        "message": "Clarity"
    },
    "osd_font_clarity_medium": {
        "message": "Clarity medium"
    },
    "osd_font_bold": {
        "message": "Bold"
    },
    "osd_font_large": {
        "message": "Large"
    },
    "osd_font_load_file": {
        "message": "Open Font File"
    },
    "osd_font_upload": {
        "message": "Upload Font"
    },
    "osd_font_manager": {
        "message": "Analogue Font Manager"
    },
    "uploadingCharacters": {
        "message": "Uploading..."
    },
    "uploadedCharacters": {
        "message": "Uploaded $1 characters"
    },
    "portsIdentifier": {
        "message": "Identifier"
    },
    "portsConfiguration": {
        "message": "Data"
    },
    "portsTelemetryOut": {
        "message": "Telemetry"
    },
    "portsSerialRx": {
        "message": "RX"
    },
    "portColumnSensors": {
        "message": "Sensors"
    },
    "portsPeripherals": {
        "message": "Peripherals"
    },
    "appUpdateNotificationHeader": {
        "message": "New Configurator version available."
    },
    "appUpdateNotificationDescription": {
        "message": "Please visit the <a href=\\"https://github.com/iNavFlight/inav-configurator/releases\\" target=\\"_blank\\">website</a> to read the release notes and download."
    },
    "closeUpdateBtn": {
        "message": "Close"
    },
    "downloadUpdatesBtn": {
        "message": "Download new app"
    },
    "tabMissionControl": {
        "message": "Mission Control"
    },
    "loadMissionButton": {
        "message": "Load mission from FC"
    },
    "saveMissionButton": {
        "message": "Save mission to FC"
    },
    "loadEepromMissionButton": {
        "message": "Load Eeprom mission"
    },
    "saveEepromMissionButton": {
        "message": "Save Eeprom mission"
    },
    "loadFileMissionButton": {
        "message": "Load file"
    },
    "saveFileMissionButton": {
        "message": "Save file"
    },
    "missionSettingsSave": {
        "message": "Save"
    },
    "missionSettingsCancel": {
        "message": "Cancel"
    },
    "editPointHead": {
        "message": "Edit point"
    },
    "editPointButtonSave": {
        "message": "Save"
    },
    "editPointButtonRemove": {
        "message": "Remove"
    },
    "removeAllPointButtonSave": {
        "message": "Remove all points"
    },
    "missionTotalInformationHead": {
        "message": "Total information"
    },
    "missionTotalInfoFilenameLoaded": {
        "message": "Filename loaded:"
    },
    "missionTotalInfoDistance": {
        "message": "Distance (m):"
    },
    "missionTotalInfoAvailablePoints": {
        "message": "Available Points"
    },
    "missionTotalInfoMissionValid": {
        "message": "Mission valid"
    },
    "missionDefaultPointAlt": {
        "message": "Alt (cm): "
    },
    "missionDefaultPointSpeed": {
        "message": "Speed (cm/s): "
    },
    "missionDefaultSafeRangeSH": {
        "message": "Radius (m): "
    },
    "missionMultiMissionsInfo": {
        "message": "Missions Info:"
    },
    "missionMultiActiveMission": {
        "message": "Active Mission:"
    },
    "missionMultiMissionNo": {
        "message": "Mission No."
    },
    "missionMultiUpdateAll": {
        "message": "Update All"
    },
    "missionMultiAddNewMission": {
        "message": "Add New Mission"
    },
    "missionEllipsoidEarthDEMModel": {
        "message": "Use Ellipsoid instead of SL DEM: "
    },
    "SafehomeLegend": {
        "message": "Legend : "
    },
    "SafehomeMaxDistance": {
        "message": "Max distance (m):"
    },
    "SafehomeSafeRadius": {
        "message": "Safe Radius (m):"
    },
    "SafehomeFwAppraoch": {
        "message": "FW Approach:"
    },
    "safehomeEdit": {
        "message": "Edit Safehome"
    },
    "missionTitleHide": {
        "message": "Hide"
    },
    "missionTitleCancel": {
        "message": "Cancel"
    },
    "missionTitleSave": {
        "message": "Save"
    },
    "missionTitlRemove": {
        "message": "Remove"
    },
    "missionTitleLoadMissionFile": {
        "message": "Load Mission File"
    },
    "missionTitleSaveMissionFile": {
        "message": "Save Mission File"
    },
    "missionTitleLoadMissionFromFC": {
        "message": "Load mission from FC"
    },
    "missionTitleSaveMissionToFC": {
        "message": "Save mission to FC"
    },
    "missionTitleLoadEepromMission": {
        "message": "Load Eeprom mission"
    },
    "missionTitleSaveEepromMission": {
        "message": "Save Eeprom mission"
    },
    "missionTitleDelete": {
        "message": "Delete"
    },
    "missionTitleRemoveAll": {
        "message": "Remove all"
    },
    "missionTitleSetActive": {
        "message": "Set Active"
    },
    "missionTitleUpdateAll": {
        "message": "Update All"
    },
    "missionTitleAdd": {
        "message": "Add"
    },
    "missionTitleMoveToCenterView": {
        "message": "move to center view"
    },
    "missionTitleSaveEepromSafehome": {
        "message": "Save Eeprom Safehome"
    },
    "missionTitleLoadEepromSafehome": {
        "message": "Load Eeprom Safehome"
    },
    "missionTitlEditMission": {
        "message": "Edit Mission"
    },
    "MissionPlannerFwLAndingAltitudeChangeReset": {
        "message": "Altitude below min land altitude. Change ignored"
    },
    "missionWpType": {
        "message": "Type:"
    },
    "missionWpLat": {
        "message": "Lat:"
    },
    "missionWpLon": {
        "message": "Lon:"
    },
    "missionSeaLevelRef": {
        "message": "Sea level Ref: "
    },
    "missionElevation": {
        "message": "Elevation (m):"
    },
    "missionNA": {
        "message": "N/A"
    },
    "missionGroundDist": {
        "message": "Grd Dist (m):"
    },
    "missionParameter1": {
        "message": "Parameter 1:"
    },
    "missionParameter2": {
        "message": "Parameter 2:"
    },
    "missionUserActions": {
        "message": "User Actions:"
    },
    "missionFwLandingSettings": {
        "message": "Fixed Wing landing settings:"
    },
    "missionFwApproachAlt": {
        "message": "Approach Alt: (cm):"
    },
    "missionFwLandAlt": {
        "message": "Land Alt: (cm):"
    },
    "missionFwApproachDir": {
        "message": "Approach direction:"
    },
    "missionFwLandHeading1": {
        "message": "Heading 1: (deg):"
    },
    "missionFwLandHeading2": {
        "message": "Heading 2: (deg):"
    },
    "missionExclusive": {
        "message": "Excl."
    },
    "missionRTHsettingsTitle": {
        "message": "RTH settings"
    },
    "missionDefaultSettingsHead": {
        "message": "Default settings"
    },
    "missionDefaultElevationHead": {
        "message": "Elevation Profile"
    },
    "missionHomeHead": {
        "message": "Take Off Home"
    },
    "missionSafehomeHead": {
        "message": "Safe Home manager"
    },
    "missionSafehomeAvailableSafehomes": {
        "message": "Available Safehomes:"
    },
    "missionSafehomeMaxSafehomesReached": {
        "message": "Maximum number of safehomes reached."
    },
    "missionGeozoneHead": {
        "message": "Geozones"
    },
    "missionGeozoneEdit": {
        "message": "Edit Geozone $1"
    },
    "missionGeozoneSaveAndReboot": {
        "message": "Save Eeprom Geozones and reboot"
    },
    "missionGeozoneLoad": {
        "message": "Load Eeprom Geozones"
    },
    "missionGeozone": {
        "message": "-Geozone "
    },
    "missionGezoneType": {
        "message": "Type"
    },
    "missionGezoneShape": {
        "message": "Shape"
    },
    "missionGeozoneTypePolygon": {
        "message": "Polygon"
    },
    "missionGeozoneTypeCircular": {
        "message": "Circular"
    },
    "missionGeozoneMaxZonesReached": {
        "message": "Maximum number of geozones reached."
    },
    "missionGeozoneMaxVerticesReached": {
        "message": "Maximum number of geozone vertices reached."
    },
    "missionGeozoneWarning": {
        "message": "At least one mission and one geozone are configured, please ensure that the mission does not violate the geozone."
    },
    "geozoneEdit": {
        "message": "Edit Geozone "
    },
    "geozoneShape": {
        "message": "Shape"
    },
    "geozoneInclusive": {
        "message": "Inclusive"
    },
    "geozoneExcusive": {
        "message": "Exclusive"
    },
    "geozoneMinAlt": {
        "message": "Min. Alt (cm):"
    },
    "geozoneMaxAlt": {
        "message": "Max. Alt (cm):"
    },
    "geozoneInfiniteAlt": {
        "message": "0 = Infinite altitude"
    },
    "geozoneAction": {
        "message": "Action:"
    },
    "geozoneActionNone": {
        "message": "None"
    },
    "geozoneActionAvoid": {
        "message": "Avoid"
    },
    "geozoneActionPosHold": {
        "message": "Pos. Hold"
    },
    "geozoneActionRTH": {
        "message": "RTH"
    },
    "geozoneRadius": {
        "message": "Radius (cm):"
    },
    "geozoneVerices": {
        "message": "Vertices:"
    },
    "": {
        "message": ""
    },
    "featureGEOZONE": {
        "message": "Geozone"
    },
    "geozone": {
        "message": "Geozone"
    },
    "featureGEOZONETip": {
        "message": "Virtual perimeters for geographical areas (also called geofence) with automatically triggered actions when the perimeters are violated."
    },
    "GeozoneSettings": {
        "message": "Geozone Settings"
    },
    "geozoneDetectionDistance": {
        "message": "Detection distance"
    },
    "geozoneDetectionDistanceHelp": {
        "message": "Distance from which a geozone is detected"
    },
    "geozoneAvoidAltitudeRange": {
        "message": "Avoid altitude range"
    },
    "geozoneAvoidAltitudeRangeHelp": {
        "message": "Altitude range in which an attempt is made to avoid a geozone upwards"
    },
    "geozoneSafeAltitudeDistance": {
        "message": "Safe altitude distance"
    },
    "geozoneSafeAltitudeDistanceHelp": {
        "message": "Vertical distance that must be maintained to the upper and lower limits of the zone."
    },
    "geozoneSafehomeAsInclusive": {
        "message": "Safehome as inclusive"
    },
    "geozoneSafehomeAsInclusiveHelp": {
        "message": "Treat nearest safehome as inclusive geozone"
    },
    "geozoneSafehomeZoneAction": {
        "message": "Safehome zone action"
    },
    "geozoneSafehomeZoneActionHelp": {
        "message": "Fence action for safehome zone"
    },
    "geozoneMrStopDistance": {
        "message": "Multirotor stop distance"
    },
    "geozoneMrStopDistanceHelp": {
        "message": "Distance in which multirotors stops before the border"
    },
    "geozoneNoWayHomeAction": {
        "message": "No way home action"
    },
    "geozoneNoWayHomeActionHelp": {
        "message": "Action if RTH with active geozones is unable to calculate a course to home. RTH: Return to home and ignore any geozones."
    },
    "missionGeozoneReboot": {
        "message": "Do you want to save and reboot?"
    },
    "missionGeozoneAvailableZones": {
        "message": "Available Geozones:"
    },
    "missionGeozoneAvailableVertices": {
        "message": "Available Vertices:"
    },
    "geozoneInvalidzone": {
        "message": "Invalid Geozone(s) detected:"
    },
    "geozoneInvalidLat": {
        "message": "Invalid latitude"
    },
    "geozoneInvalidLon": {
        "message": "Invalid longitude"
    },
    "gezoneInvalidReasonNotCC": {
        "message": "Not counter clockwise"
    },
    "gezoneInvalidReasonComplex": {
        "message": "Complex"
    },
    "gezoneInvalidReasonMinMaxAlt": {
        "message": "Max. Alt <= Min. Alt"
    },
    "geozoneUnableToSave": {
        "message": "Unable to save geozones: Invalid zones"
    },
    "missionMultiMissionHead": {
        "message": "Multi Missions"
    },
    "missionTemplateHead": {
        "message": "Mission template"
    },
    "missionActionMenuHead": {
        "message": "Action Menu"
    },
    "useOnlyStandalone": {
        "message": "Use stand-alone application.<br> Please visit the <a href=\\"https://github.com/iNavFlight/inav-configurator/releases\\" target=\\"_blank\\">website</a> to read the release notes and download."
    },
    "eeprom_load_ok": {
        "message": "EEPROM <span style=\\"color: #37a8db\\">loaded</span>"
    },
    "confirm_delete_all_points": {
        "message": "Do you really want to delete all points?"
    },
    "confirm_delete_point_with_options": {
        "message": "Do you really want to delete this Waypoint with non-Geo JUMP/SET_HEAD/RTH options? \\nIf yes, Non-Geo options attached will be removed also!"
    },
    "confirm_multimission_file_load": {
        "message": "This is a multi mission file. Loading will over write current multi mission.\\nContinue?"
    },
    "confirm_overwrite_multimission_file_load_option": {
        "message": "This will over write current multi mission.\\nContinue?"
    },
    "multimission_active_index_saved_eeprom": {
        "message": "Mission active index saved"
    },
    "no_waypoints_to_load": {
        "message": "No waypoints to load !"
    },
    "no_waypoints_to_save": {
        "message": "No waypoints to save !"
    },
    "mixerThrottleWarning": {
        "message": "Warning:value beyond normal operation range."
    },
    "servoMixer": {
        "message": "Servo Mixer"
    },
    "servoMixerDelete": {
        "message": "Delete"
    },
    "servoMixerAdd": {
        "message": "Add new mixer rule"
    },
    "platformType": {
        "message": "Platform type"
    },
    "platformConfiguration": {
        "message": "Platform Configuration"
    },
    "output_modeTitle": {
        "message": "Output mode"
    },
    "mixerPreset": {
        "message": "Mixer Preset"
    },
    "mixerNotLoaded": {
        "message": "Mixer not loaded.<br />Click <b>Load and apply</b> or <b>Load mixer</b> to use the selected mixer.<br />Or click <b>Refresh mixer</b> to use your current mixer."
    },
    "mixerLoadPresetRules": {
        "message": "Load mixer"
    },
    "mixerRefreshCurrentRules": {
        "message": "Refresh mixer"
    },
    "mixerLoadAndApplyPresetRules": {
        "message": "Load and apply"
    },
    "mixerApplyModalTitle": {
        "message": "Confirm"
    },
    "mixerButtonSaveAndReboot": {
        "message": "Save and Reboot"
    },
    "mixerApplyDescription": {
        "message": "This action overrides all current mixer settings and replaces them with default values. There is no 'Undo' option!"
    },
    "mixerWizardModalTitle": {
        "message": "Motor Mixer Wizard"
    },
    "mixerWizardModalApply": {
        "message": "Apply"
    },
    "motorWizard0": {
        "message": "Rear-Right"
    },
    "motorWizard1": {
        "message": "Front-Right"
    },
    "motorWizard2": {
        "message": "Rear-Left"
    },
    "motorWizard3": {
        "message": "Front-Left"
    },
    "mixerWizardMotorPosition": {
        "message": "Motor position"
    },
    "mixerWizardMotorIndex": {
        "message": "Motor index"
    },
    "mixerWizardLocateInfo": {
        "message": "Click a motor to identify it"
    },
    "mixerWizardLocateHint": {
        "message": "Click to make this motor beep and twitch"
    },
    "mixerWizardIntro": {
        "message": "This wizard will help you identify which motor is connected to each output. The wizard will activate each motor in turn - click where you see movement."
    },
    "mixerWizardStep1": {
        "message": "Remove all propellers for safety"
    },
    "mixerWizardStep2": {
        "message": "Connect a battery to power the ESCs"
    },
    "mixerWizardStep3": {
        "message": "Make sure you can see/hear all motors"
    },
    "mixerWizardLocating": {
        "message": "Motor"
    },
    "mixerWizardClickPosition": {
        "message": "Click where you see this motor moving."
    },
    "mixerWizardComplete": {
        "message": "All motors identified! Click Apply to save the motor mapping."
    },
    "mixerWizardStart": {
        "message": "Start Wizard"
    },
    "mixerWizardStop": {
        "message": "Emergency Stop"
    },
    "settings": {
        "message": "Settings"
    },
    "decimals": {
        "message": "Decimals"
    },
    "motorMixer": {
        "message": "Motor Mixer"
    },
    "servo": {
        "message": "Servo"
    },
    "input": {
        "message": "Input"
    },
    "fixedValue": {
        "message": "Fixed Value (µs)"
    },
    "weight": {
        "message": "Weight (%)"
    },
    "speed": {
        "message": "Speed (10µs/s)"
    },
    "mixerPresetTitle": {
        "message": "Mixer preset"
    },
    "fcFirmwareUpdateRequired": {
        "message": "Flight controller firmware has to be updated to latest version to use this function"
    },
    "mixerNotConfigured": {
        "message": "Mixer not configured. Use <u>Mixer</u> tab to set it up!"
    },
    "confirm_reset_settings": {
        "message": "Do you really want to reset all settings?\\nATTENTION: All settings are lost! You have to setup the whole aircraft after this operation!"
    },
    "confirm_select_defaults": {
        "message": "This will allow to select new default values for all settings. Existing PID tune and other settings might be lost!\\nDo you want to continue?"
    },
    "confirm_reset_pid": {
        "message": "This will reset all PID settings to firmware default values and save.\\nDo you want to continue?"
    },
    "mappingTableOutput": {
        "message": "Output (timer)"
    },
    "mappingTableFunction": {
        "message": "Function"
    },
    "mappingTableTitle": {
        "message": "Output Mapping"
    },
    "NONE": {
        "message": "None"
    },
    "DEFAULT": {
        "message": "Default"
    },
    "AIRCRAFT": {
        "message": "Aircraft"
    },
    "ALTITUDE": {
        "message": "Altitude"
    },
    "GROUND_SPEED": {
        "message": "Ground speed"
    },
    "HOME_DISTANCE": {
        "message": "Distance to home"
    },
    "brakingSpeedThreshold": {
        "message": "Min. speed threshold"
    },
    "brakingSpeedThresholdTip": {
        "message": "Braking will be enabled only if actual speed if higher than threshold"
    },
    "brakingDisengageSpeed": {
        "message": "Braking disengage speed"
    },
    "brakingDisengageSpeedTip": {
        "message": "Braking will end when speed goes below this value"
    },
    "brakingTimeout": {
        "message": "Max. braking duration"
    },
    "brakingTimeoutTip": {
        "message": "Safety measure. This is the longest period of time braking can be active."
    },
    "brakingBoostFactor": {
        "message": "Boost factor"
    },
    "brakingBoostFactorTip": {
        "message": "Defines how strong the braking boost will be. 100% means the navigation engine is allowed to double the banking speed and acceleration"
    },
    "brakingBoostTimeout": {
        "message": "Max. braking boost duration"
    },
    "brakingBoostTimeoutTip": {
        "message": "Safety measure. This is the longest period of time braking boost can be active."
    },
    "brakingBoostSpeedThreshold": {
        "message": "Boost min. speed threshold"
    },
    "brakingBoostSpeedThresholdTip": {
        "message": "Braking boost will be enabled only if actual speed if higher than threshold"
    },
    "brakingBoostDisengageSpeed": {
        "message": "Braking boost disengage speed"
    },
    "brakingBoostDisengageSpeedTip": {
        "message": "Braking boost will end when speed goes below this value"
    },
    "brakingBankAngle": {
        "message": "Max. bank angle"
    },
    "brakingBankAngleTip": {
        "message": "Max bank angle allowed during braking phase"
    },
    "multirotorBrakingConfiguration": {
        "message": "Multirotor braking mode configuration"
    },
    "mapProvider": {
        "message": "Map Provider"
    },
    "proxyURL": {
        "message": "MapProxy URL"
    },
    "proxyLayer": {
        "message": "MapProxy Layer"
    },
    "accNotchHz": {
        "message": "Acc. notch filter freq."
    },
    "accNotchHzHelp": {
        "message": "Allow to set a single notch filter for accelerometer readout. Should be configured in the same way as gyro notch if accelerometer records a noise spike above acc. LPF filter"
    },
    "accNotchCutoff": {
        "message": "Acc. notch filter cutoff freq."
    },
    "accNotchCutoffHelp": {
        "message": "Should be kept below acc. notch filter frequency"
    },
    "gyroStage2LpfCutoffFrequency": {
        "message": "Gyro Stage 2 LPF cutoff frequency"
    },
    "gyroStage2LpfCutoffFrequencyHelp": {
        "message": "Second stage gyro low pass filter that is an equivalent of Betaflight not-Kalman stage2 filter. It has to be setup above first stage gyro LPF. For 5 and 6-inch miniquads, this usually means above 150Hz. 7-inch quads above 125Hz."
    },
    "escProtocolNotAdvised": {
        "message": "This ESC protocol is not advised, use it at your own risk"
    },
    "escProtocolExperimental": {
        "message": "Experimental ESC protocol, use at your own risk"
    },
    "looptimeNotAdvised": {
        "message": "PID loop might be not stable if GPS is in use"
    },
    "gyroLpfSuggestedMessage": {
        "message": "This is suggested setting for all multirotors with propeller size below 8 inches. Always check motor temperature after the first flight"
    },
    "gyroLpfNotAdvisedMessage": {
        "message": "It is suggested to choose an higher cutoff frequency"
    },
    "gyroLpfNotFlyableMessage": {
        "message": "This setting will probably make the UAV unflyable"
    },
    "gyroLpfWhyNotHigherMessage": {
        "message": "If motors are not overheating, try to set 256Hz instead"
    },
    "gyroLpfWhyNotSlightlyHigherMessage": {
        "message": "If there are no vibration problems and motors are not overheating, try to set 188Hz instead"
    },
    "tabLogicConditions": {
        "message": "Logic conditions"
    },
    "logicId": {
        "message": "#"
    },
    "logicEnabled": {
        "message": "Enabled"
    },
    "logicOperation": {
        "message": "Operation"
    },
    "logicOperandA": {
        "message": "Operand A"
    },
    "logicOperandB": {
        "message": "Operand B"
    },
    "logicFlags": {
        "message": "Flags"
    },
    "logicStatus": {
        "message": "Status"
    },
    "logicSave": {
        "message": "Save"
    },
    "logicClose": {
        "message": "Close"
    },
    "logicActivator": {
        "message": "Active when"
    },
    "save": {
        "message": "Save"
    },
    "copy": {
        "message": "Copy"
    },
    "paste": {
        "message": "Paste"
    },
    "clear": {
        "message": "Clear"
    },
    "active": {
        "message": "Active"
    },
    "itermRelax": {
        "message": "Iterm Relax"
    },
    "itermRelaxHelp": {
        "message": "Defines Iterm relaxation algorithm activation. PR mean it's active on Roll and Pitch axis. PRY is active also on Yaw."
    },
    "dterm_lpf_type": {
        "message": "D-term LPF type"
    },
    "dterm_lpf_type_help": {
        "message": "BIQUAD offers better noise attenuation for a price of higher delay. PT1 has lower attenuation but offers lower delay."
    },
    "dterm_lpf2_type": {
        "message": "D-term Stage 2 LPF type"
    },
    "dterm_lpf2_type_help": {
        "message": "BIQUAD offers better noise attenuation for a price of higher delay. PT1 has lower attenuation but offers lower delay."
    },
    "dterm_lpf2_hz": {
        "message": "D-term Stage 2 LPF cutoff frequency"
    },
    "dterm_lpf2_hz_help": {
        "message": "Lowpass cutoff filter for D-term on ROLL and PITCH axises. 0 mean filter is disabled"
    },
    "tabFilteringAdvanced": {
        "message": "Other filters"
    },
    "gps_map_center": {
        "message": "Center"
    },
    "ouptputsConfiguration": {
        "message": "Configuration"
    },
    "vtxDisclaimer": {
        "message": "Use only bands, channels and power levels that are legal in a place you fly! Always refer to VTX user manual and local regulations!"
    },
    "defaultsDialogTitle": {
        "message": "Default values"
    },
    "defaultsDialogInfo": {
        "message": "INAV Configurator would like to know which kind of UAV you are configuring. Based on this information it will modify some default values to unlock the best flying performance. "
    },
    "defaultsDialogInfo2": {
        "message": "Avoid blindly restoring all PID and filter configuration from the previous version of INAV. The best result can be obtained by retuning from defaults!"
    },
    "throttleIdle": {
        "message": "Motors IDLE power"
    },
    "throttleIdleDigitalInfo": {
        "message": "For digital protocols, IDLE can be lowered even down to 5-7% without motors stopping in the air. If a drone wobbles after pulling throttle low, try increasing IDLE to tune this behavior out."
    },
    "throttleIdleAnalogInfo": {
        "message": "For analog protocols, IDLE can be lowered below 10% if motors are working smooth without stuttering. If a drone wobbles after pulling throttle low, try increasing IDLE to tune this behavior out."
    },
    "motor_poles": {
        "message": "Number of motor poles (number of magnets)"
    },
    "motorStopWarning": {
        "message": "Should be enabled on Airplanes, Rovers and Boats. Should not be enabled on Multirotors! On Multirotors, when Airmode is active, motors will not stop."
    },
    "reversibleEscWarning": {
        "message": "When Reversible Motors are used, set Motors IDLE power to 0%"
    },
    "dynamic_gyro_notch_enabled_help": {
        "message": "Matrix Gyro Filter is the new generation of dynamic gyro notches available in INAV. It is recommended to enable it on all Multirotor builds on F4 and F7 flight controllers."
    },
    "globalFunctions": {
        "message": "Global functions"
    },
    "functionId": {
        "message": "#"
    },
    "functionEnabled": {
        "message": "Enabled"
    },
    "functionLogicId": {
        "message": "Activation Logic Condition"
    },
    "functionAction": {
        "message": "Action"
    },
    "functionOperand": {
        "message": "Operand"
    },
    "functionFlags": {
        "message": "Flags"
    },
    "configurationI2cSpeed": {
        "message": "I2C Speed"
    },
    "configurationI2cSpeedHelp": {
        "message": "I2C speed should be kept at the highest level that allows for all connected devices to work. Default 400kHz is a safe value and it is suggested to switch to 800kHz in case of Multirotors."
    },
    "i2cSpeedSuggested800khz": {
        "message": "Please switch to 800kHz if connected hardware allows for it"
    },
    "i2cSpeedTooLow": {
        "message": "This I2C speed is too low!"
    },
    "configurationVoltageMeterType": {
        "message": "Voltage Meter Type"
    },
    "configurationCurrentMeterType": {
        "message": "Current Meter Type"
    },
    "MissionPlannerJumpSettingsCheck": {
        "message": "JUMP settings incorrect : Check it again! \\nBeing forced to WP 1!"
    },
    "MissionPlannerJump2SettingsCheck": {
        "message": "JUMP settings incorrect : Repeat should not exceed 10! \\nCheck it again! Being forced to number of repeat equal 0!"
    },
    "MissionPlannerJump3SettingsCheck": {
        "message": "JUMP settings incorrect : not able to Jump to a POI! \\nBeing forced to WP 1!"
    },
    "MissionPlannerHeadSettingsCheck": {
        "message": "Heading value is incorrect : Check it again! Being forced by default to -1 thence!"
    },
    "MissionPlannerRTHSettingsCheck": {
        "message": "RTH option is incorrect : Should be 0 or 1. Check it again! \\nBeing forced by default to 0, i.e no LAND after RTH!"
    },
    "MissionPlannerJumpTargetRemoval": {
        "message": "You can't remove a Waypoint which is defined as a JUMP target! \\nYou first need to remove the target on the waypoint triggering the JUMP."
    },
    "MissionPlannerAltitudeChangeReset": {
        "message": "Altitude below ground level. Change ignored"
    },
    "SafehomeSelected": {
        "message": ""
    },
    "SafehomeId": {
        "message": "#"
    },
    "SafehomeEnabled": {
        "message": "Enabled"
    },
    "SafehomeLon": {
        "message": "Lon"
    },
    "SafehomeLat": {
        "message": "Lat"
    },
    "SafehomeAlt": {
        "message": "Elev"
    },
    "WaypointOptionSelected": {
        "message": "+"
    },
    "WaypointOptionId": {
        "message": "#"
    },
    "WaypointOptionAction": {
        "message": "Type"
    },
    "WaypointOptionP1": {
        "message": "P1"
    },
    "WaypointOptionP2": {
        "message": "P2"
    },
    "pidId": {
        "message": "#"
    },
    "pidEnabled": {
        "message": "Enabled"
    },
    "pidSetpoint": {
        "message": "Setpoint"
    },
    "pidMeasurement": {
        "message": "Measurement"
    },
    "pidP": {
        "message": "P-gain"
    },
    "pidI": {
        "message": "I-gain"
    },
    "pidD": {
        "message": "D-gain"
    },
    "pidFF": {
        "message": "FF-gain"
    },
    "pidOutput": {
        "message": "Output"
    },
    "reset": {
        "message": "Reset"
    },
    "illegalStateRestartRequired": {
        "message": "Illegal state. Restart required."
    },
    "motor_direction_inverted": {
        "message": "Normal motor direction / Props-in configuration"
    },
    "motor_direction_isInverted": {
        "message": "Reversed motor direction / Props-out configuration"
    },
    "motor_direction_inverted_hint": {
        "message": "Enable if the motor direction is reversed and the props are mounted in the opposite direction."
    },
    "mixer_control_profile_linking": {
        "message": "Control Profile will use same index as Mixer Profile index"
    },
    "mixer_control_profile_linking_hint": {
        "message": "mixer_control_profile_linking: Enable on both Mixer Profile if you want Control Profile switching handled by Mixer Profile switching(Recommend in vtol/mixed plaform type setup)"
    },
    "blackboxFields": {
        "message": "Blackbox fields"
    },
    "BLACKBOX_FEATURE_NAV_ACC": {
        "message": "Navigation accelerometer"
    },
    "BLACKBOX_FEATURE_NAV_POS": {
        "message": "Navigation position estimation"
    },
    "BLACKBOX_FEATURE_NAV_PID": {
        "message": "Navigation PID"
    },
    "BLACKBOX_FEATURE_MAG": {
        "message": "Magnetometer"
    },
    "BLACKBOX_FEATURE_ACC": {
        "message": "Accelerometer"
    },
    "BLACKBOX_FEATURE_ATTITUDE": {
        "message": "Attitude"
    },
    "BLACKBOX_FEATURE_RC_DATA": {
        "message": "RC data"
    },
    "BLACKBOX_FEATURE_RC_COMMAND": {
        "message": "RC command"
    },
    "BLACKBOX_FEATURE_MOTORS": {
        "message": "Motors output"
    },
    "BLACKBOX_FEATURE_GYRO_RAW": {
        "message": "Gyro RAW (no filtering)"
    },
    "BLACKBOX_FEATURE_GYRO_PEAKS_ROLL": {
        "message": "Gyro Noise peak freq. Roll"
    },
    "BLACKBOX_FEATURE_GYRO_PEAKS_PITCH": {
        "message": "Gyro Noise peak freq. Pitch"
    },
    "BLACKBOX_FEATURE_GYRO_PEAKS_YAW": {
        "message": "Gyro Noise peak freq. Yaw"
    },
    "BLACKBOX_FEATURE_SERVOS": {
        "message": "Servos output"
    },
    "axisRoll": {
        "message": "Roll"
    },
    "axisPitch": {
        "message": "Pitch"
    },
    "axisYaw": {
        "message": "Yaw"
    },
    "showAdvancedPIDs": {
        "message": "Show advanced PID controllers"
    },
    "rc_filter_lpf_hz": {
        "message": "Manual LPF Hz"
    },
    "rc_filter_smoothing_factor": {
        "message": "Auto Smoothing Factor"
    },
    "rc_filter_auto": {
        "message": "Use automatic RC smoothing"
    },
    "rcSmoothing": {
        "message": "RC Smoothing"
    },
    "throttle_scale": {
        "message": "Throttle scale"
    },
    "throttle_scale_help": {
        "message": "Allow to limit effective power fed to the motors. Throttle Scale 1 mean there is no power limiting. Throttle Scale 0.5 means throttle position will be cut in half before passed to the motors."
    },
    "pidTuning_MatrixFilterType": {
        "message": "Matrix Filter Type"
    },
    "pidTuning_MatrixFilterTypeHelp": {
        "message": "Defines the type of Matrix Filter. Default 2D filter is recommended for most users. 7-inch and larger quads may benefit from 3D filter."
    },
    "softSerialWarning": {
        "message": "It is not advisable to use softserial for flight critical devices like GPS or receiver, or high traffic devices like MSP DisplayPort."
    },
    "ledStripColorSetupTitle": {
        "message": "Color setup"
    },
    "ledStripH": {
        "message": "H"
    },
    "ledStripS": {
        "message": "S"
    },
    "ledStripV": {
        "message": "V"
    },
    "ledStripRemainingText": {
        "message": "Remaining"
    },
    "ledStripClearSelectedButton": {
        "message": "Clear selected"
    },
    "ledStripClearAllButton": {
        "message": "Clear ALL"
    },
    "ledStripFunctionSection": {
        "message": "LED Functions"
    },
    "ledStripFunctionTitle": {
        "message": "Function"
    },
    "ledStripFunctionNoneOption": {
        "message": "None"
    },
    "ledStripFunctionColorOption": {
        "message": "Color"
    },
    "ledStripFunctionModesOption": {
        "message": "Modes &amp; Orientation"
    },
    "ledStripFunctionArmOption": {
        "message": "Arm State"
    },
    "ledStripFunctionBatteryOption": {
        "message": "Battery"
    },
    "ledStripFunctionRSSIOption": {
        "message": "RSSI"
    },
    "ledStripFunctionGPSOption": {
        "message": "GPS"
    },
    "ledStripFunctionRingOption": {
        "message": "Ring"
    },
    "ledStripFunctionChannelOption": {
        "message": "Channel"
    },
    "ledStripColorModifierTitle": {
        "message": "Color modifier"
    },
    "ledStripThrottleText": {
        "message": "Throttle"
    },
    "ledStripLarsonscannerText": {
        "message": "Larson scanner"
    },
    "ledStripBlinkTitle": {
        "message": "Blink"
    },
    "ledStripBlinkAlwaysOverlay": {
        "message": "Blink always"
    },
    "ledStripBlinkLandingOverlay": {
        "message": "Blink on landing"
    },
    "ledStripStrobeText": {
        "message": "Strobe"
    },
    "ledStripEnableStrobeLightEffectText": {
        "message": "Enable strobe light effect"
    },
    "ledStripOverlayTitle": {
        "message": "Overlay"
    },
    "ledStripWarningsOverlay": {
        "message": "Warnings"
    },
    "ledStripIndecatorOverlay": {
        "message": "Indicator"
    },
    "colorBlack": {
        "message": "black"
    },
    "colorWhite": {
        "message": "white"
    },
    "colorRed": {
        "message": "red"
    },
    "colorOrange": {
        "message": "orange"
    },
    "colorYellow": {
        "message": "yellow"
    },
    "colorLimeGreen": {
        "message": "lime green"
    },
    "colorGreen": {
        "message": "green"
    },
    "colorMintGreen": {
        "message": "mint green"
    },
    "colorCyan": {
        "message": "cyan"
    },
    "colorLightBlue": {
        "message": "light blue"
    },
    "colorBlue": {
        "message": "blue"
    },
    "colorDarkViolet": {
        "message": "dark violet"
    },
    "colorMagenta": {
        "message": "magenta"
    },
    "colorDeepPink": {
        "message": "deep pink"
    },
    "ledStripSelectChannelFromColorList": {
        "message": "Select Channel from color list"
    },
    "ledStripModeColorsTitle": {
        "message": "Mode colors"
    },
    "ledStripModeColorsModeOrientation": {
        "message": "Orientation"
    },
    "ledStripModeColorsModeHeadfree": {
        "message": "Headfree"
    },
    "ledStripModeColorsModeHorizon": {
        "message": "Horizon"
    },
    "ledStripModeColorsModeAngle": {
        "message": "Angle"
    },
    "ledStripModeColorsModeMag": {
        "message": "Mag"
    },
    "ledStripModeColorsModeBaro": {
        "message": "Baro"
    },
    "ledStripDirN": {
        "message": "N"
    },
    "ledStripDirE": {
        "message": "E"
    },
    "ledStripDirS": {
        "message": "S"
    },
    "ledStripDirW": {
        "message": "W"
    },
    "ledStripDirU": {
        "message": "U"
    },
    "ledStripDirD": {
        "message": "D"
    },
    "ledStripModesOrientationTitle": {
        "message": "LED Orientation and Color"
    },
    "ledStripModesSpecialColorsTitle": {
        "message": "Special colors"
    },
    "ledStripModeColorsModeDisarmed": {
        "message": "Disarmed"
    },
    "ledStripModeColorsModeArmed": {
        "message": "Armed"
    },
    "ledStripModeColorsModeAnimation": {
        "message": "Animation"
    },
    "ledStripModeColorsModeBlinkBg": {
        "message": "Blink background"
    },
    "ledStripModeColorsModeGPSNoSats": {
        "message": "GPS: no sats"
    },
    "ledStripModeColorsModeGPSNoLock": {
        "message": "GPS: no lock"
    },
    "ledStripModeColorsModeGPSLocked": {
        "message": "GPS: locked"
    },
    "ledStripWiring": {
        "message": "LED Strip Wiring"
    },
    "ledStripWiringMode": {
        "message": "Wire Ordering Mode"
    },
    "ledStripWiringClearControl": {
        "message": "Clear selected"
    },
    "ledStripWiringClearAllControl": {
        "message": "Clear ALL Wiring"
    },
    "ledStripWiringMessage": {
        "message": "LEDs without wire ordering number will not be saved."
    },
    "mainLogoText": {
        "message": "CONFIGURATOR"
    },
    "mainLogoTextFirmware": {
        "message": "FC FIRMWARE"
    },
    "mainPortOverrideLabel": {
        "message": "Port: "
    },
    "mainManual": {
        "message": "Manual"
    },
    "sensorDataFlashNotFound": {
        "message": "No dataflash <br>chip found"
    },
    "sensorDataFlashFreeSpace": {
        "message": "Dataflash: "
    },
    "mixerProfile1": {
        "message": "Mixer Profile 1"
    },
    "mixerProfile2": {
        "message": "Mixer Profile 2"
    },
    "sensorProfile1": {
        "message": "Control Profile 1"
    },
    "sensorProfile2": {
        "message": "Control Profile 2"
    },
    "sensorProfile3": {
        "message": "Control Profile 3"
    },
    "sensorBatteryProfile1": {
        "message": "Battery Profile 1"
    },
    "sensorBatteryProfile2": {
        "message": "Battery Profile 2"
    },
    "sensorBatteryProfile3": {
        "message": "Battery Profile 3"
    },
    "sensorStatusGyro": {
        "message": "Gyroscope — Blue: healthy, Red: error, Dark: not detected"
    },
    "sensorStatusGyroShort": {
        "message": "Gyro",
        "description": "Text of the image in the top sensors icons. Please keep it short."
    },
    "sensorStatusAccel": {
        "message": "Accelerometer — Blue: healthy, Red: error, Dark: not detected"
    },
    "sensorStatusAccelShort": {
        "message": "Accel",
        "description": "Text of the image in the top sensors icons. Please keep it short."
    },
    "sensorStatusMag": {
        "message": "Magnetometer — Blue: healthy, Red: error, Dark: not detected"
    },
    "sensorStatusMagShort": {
        "message": "Mag",
        "description": "Text of the image in the top sensors icons. Please keep it short."
    },
    "sensorStatusBaro": {
        "message": "Barometer — Blue: healthy, Red: error, Dark: not detected"
    },
    "sensorStatusBaroShort": {
        "message": "Baro",
        "description": "Text of the image in the top sensors icons. Please keep it short."
    },
    "sensorStatusGPS": {
        "message": "GPS — Blue: healthy, Red: error, Dark: not detected"
    },
    "sensorStatusGPSShort": {
        "message": "GPS",
        "description": "Text of the image in the top sensors icons. Please keep it short."
    },
    "sensorOpticalFlow": {
        "message": "Optical flow — Blue: healthy, Red: error, Dark: not detected"
    },
    "sensorOpticalFlowShort": {
        "message": "Flow"
    },
    "sensorStatusSonar": {
        "message": "Sonar / Range finder — Blue: healthy, Red: error, Dark: not detected"
    },
    "sensorStatusSonarShort": {
        "message": "Sonar",
        "description": "Text of the image in the top sensors icons. Please keep it short."
    },
    "sensorAirspeed": {
        "message": "Airspeed — Blue: healthy, Red: error, Dark: not detected"
    },
    "sensorAirspeedShort": {
        "message": "Speed"
    },
    "sensorBatteryVoltage": {
        "message": "Battery voltage"
    },
    "mainShowLog": {
        "message": "Show Log"
    },
    "mainHideLog": {
        "message": "Hide Log"
    },
    "waitingForData": {
        "message": "Waiting for data ..."
    },
    "outputStatsTableAcc": {
        "message": "Acc. noise RMS"
    },
    "outputStatsTableCurrent": {
        "message": "Current [A]"
    },
    "outputStatsTableVoltage": {
        "message": "Voltage [V]"
    },
    "LogicConditions": {
        "message": "Logic Conditions"
    },
    "PIDControllers": {
        "message": "PID Controllers"
    },
    "sensorsGyroSelect": {
        "message": "Gyroscope"
    },
    "sensorsAccelSelect": {
        "message": "Accelerometer"
    },
    "sensorsMagSelect": {
        "message": "Magnetometer"
    },
    "sensorsAltitudeSelect": {
        "message": "Barometer"
    },
    "sensorsSonarSelect": {
        "message": "Sonar"
    },
    "sensorsAirSpeedSelect": {
        "message": "Air speed"
    },
    "sensorsTemperaturesSelect": {
        "message": "Temperatures"
    },
    "sensorsDebugSelect": {
        "message": "Debug"
    },
    "sensorsDebugTrace": {
        "message": "Open Debug Trace"
    },
    "sensorsGyroscope": {
        "message": "Gyroscope - deg/s"
    },
    "sensorsAccelerometer": {
        "message": "Accelerometer - g"
    },
    "sensorsMagnetometer": {
        "message": "Magnetometer - Ga"
    },
    "sensorsBarometer": {
        "message": "Barometer - meters"
    },
    "sensorsSonar": {
        "message": "Sonar - cm"
    },
    "sensorsAirspeed": {
        "message": "Air speed - cm/s"
    },
    "sensorsTemperature0": {
        "message": "Temperature 0 - °C"
    },
    "sensorsTemperature1": {
        "message": "Temperature 1 - °C"
    },
    "sensorsTemperature2": {
        "message": "Temperature 2 - °C"
    },
    "sensorsTemperature3": {
        "message": "Temperature 3 - °C"
    },
    "sensorsTemperature4": {
        "message": "Temperature 4 - °C"
    },
    "sensorsTemperature5": {
        "message": "Temperature 5 - °C"
    },
    "sensorsTemperature6": {
        "message": "Temperature 6 - °C"
    },
    "sensorsTemperature7": {
        "message": "Temperature 7 - °C"
    },
    "sensorsTemperatureValue": {
        "message": "value:"
    },
    "getRunningOS": {
        "message": "Running - OS: <strong>"
    },
    "getConfiguratorVersion": {
        "message": "Configurator: <strong>"
    },
    "loadedReleaseInfo": {
        "message": "Loaded release information from GitHub."
    },
    "newVersionAvailable": {
        "message": "New version available!"
    },
    "ReceiveTime": {
        "message": "Receive time: "
    },
    "SendTime": {
        "message": "Send time: "
    },
    "ErrorWritingFile": {
        "message": "<span style=\\"color: red\\">Error writing file</span>"
    },
    "FileSaved": {
        "message": "File saved"
    },
    "selectedTarget": {
        "message": "selected target = "
    },
    "toggledRCs": {
        "message": "toggled RCs"
    },
    "noFirmwareSelectedToLoad": {
        "message": "<b>No firmware selected to load</b>"
    },
    "selectValidSerialPort": {
        "message": "<span style=\\"color: red\\">Please select valid serial port</span>'"
    },
    "writePermissionsForFile": {
        "message": "You don\\\\'t have <span style=\\"color: red\\">write permissions</span> for this file"
    },
    "automaticTargetSelect": {
        "message": "Attempting automatic target selection"
    },
    "notAWAYPOINT": {
        "message": "Previous selection was not a WAYPOINT!"
    },
    "startGettingSafehomePoints": {
        "message": "Start of getting Safehome points"
    },
    "endGettingSafehomePoints": {
        "message": "End of getting Safehome points"
    },
    "startSendingSafehomePoints": {
        "message": "Start of sending Safehome points"
    },
    "endSendingSafehomePoints": {
        "message": "End of sending Safehome points"
    },
    "startGetPoint": {
        "message": "Start get point"
    },
    "startSendPoint": {
        "message": "Start send point"
    },
    "errorReadingFileXml2jsNotFound": {
        "message": "<span style=\\"color: red\\">Error reading file (xml2js not found)</span>'"
    },
    "errorReadingFile": {
        "message": "<span style=\\"color: red\\">Error reading file</span>"
    },
    "errorParsingFile": {
        "message": "<span style=\\"color: red\\">Error parsing file</span>"
    },
    "loadedSuccessfully": {
        "message": " has been loaded successfully !"
    },
    "errorWritingFileXml2jsNotFound": {
        "message": "<span style=\\"color: red\\">Error writing file (xml2js not found)</span>"
    },
    "savedSuccessfully": {
        "message": " has been saved successfully !"
    },
    "endGetPoint": {
        "message": "End get point"
    },
    "endSendPoint": {
        "message": "End send point"
    },
    "osdSettingsSaved": {
        "message": "OSD settings saved"
    },
    "osdLayoutInsertedIntoClipboard": {
        "message": "Layout has been saved to clipboard"
    },
    "osdLayoutPasteFromClipboard": {
        "message": "Layout has been restored from clipboard"
    },
    "osdClearLayout": {
        "message": "Layout has been cleared"
    },
    "failedToOpenSerialPort": {
        "message": "<span style=\\"color: red\\">Failed</span> to open serial port"
    },
    "failedToFlash": {
        "message": "<span style=\\"color: red\\">Failed</span> to flash"
    },
    "targetPrefetchsuccessful": {
        "message": "Target prefetch successful: "
    },
    "targetPrefetchFail": {
        "message": "Cannot prefetch target: "
    },
    "targetPrefetchFailDFU": {
        "message": "Cannot prefetch target: Flight Controller in DFU"
    },
    "targetPrefetchFailOld": {
        "message": "Cannot prefetch target: INAV Firmware too old"
    },
    "targetPrefetchFailNonINAV": {
        "message": "Cannot prefetch target: Non-INAV Firmware"
    },
    "targetPrefetchFailNoPort": {
        "message": "Cannot prefetch target: No port"
    },
    "timerOutputs": {
        "message": "Output Groups (Timers)"
    },
    "ezTuneFilterHz": {
        "message": "Filter Hz"
    },
    "ezTuneAxisRatio": {
        "message": "Axis ratio"
    },
    "ezTuneResponse": {
        "message": "Response"
    },
    "ezTuneDamping": {
        "message": "Damping"
    },
    "ezTuneStability": {
        "message": "Stability"
    },
    "ezTuneAggressiveness": {
        "message": "Aggressiveness"
    },
    "ezTuneRate": {
        "message": "Rate"
    },
    "ezTuneExpo": {
        "message": "Expo"
    },
    "ezTuneSnappiness": {
        "message": "Snappiness"
    },
    "ezTuneSnappinessTips": {
        "message": "Helps to have a snappy stick feeling. Whenever you do a fast stick movement, high Snappiness will accelerate the drone response. Both when you start and stop the manouver. Try different values to find the one that suits you best."
    },
    "ezTuneFilterHzTips": {
        "message": "This sets the base cutoff frequency for all INAV gyro and D-term filters. Higher values will result in lower filter delay and better stabilization, but more noise will go through the filters and motors will get hot, UAV might oscillate and be unfyable. Your goal is to increase this value as high as possible before any negative effects appear. Negative effects include: hot motors, audible osciallations, UAV rapidly shaking, UAV gaining altitude by itself. Usual starting points for 'Filter Hz' are: <strong>3-inch props</strong>: 90, <strong>5-inch props</strong>: 110, <strong>7-inch props</strong>: 90, <strong>10-inch props</strong>: 75, <strong>12-inch props</strong>: 60. Use Blackbox and common sense to find a value that is most suited for your UAV."
    },
    "ezTuneAxisRatioTips": {
        "message": "Describes the weight/moment of inertia distribution of your UAV. The longer the frame (more mass on the front-back axis) more Axis Ratio is requires. Perfect X frame is ratio 100. Most modern frames should fit somewhere between 110 and 130. Default 110 is a good starting point."
    },
    "ezTuneResponseTips": {
        "message": "This setting defines how fast the UAV will react to stick movements and gyro signal. Higher values will result in faster reaction, but also in more overshoots and oscillations. If UAV feels sluggish or has a slow wobble, increase the Response. If it has hot motors, audibly osciallates, overshoots or feels too nervous, decrease the Response. Most modern quads should beefy motors will fly best with Response below 80. Should be tuned together with Damping. It is a P-term equivalent."
    },
    "ezTuneDampingTips": {
        "message": "Describes the stengths of a force that opposes any rotation speed change. It dampens roll and pitch acceleration and causes smoother and more stable flight. Your task during tuning is to find out how much you can increase it before any negative symptoms appear: hot motors, audible osciallations, overshoot. Most modern quads should accept 'Damping' up to 150-180. It is a D-term equivalent."
    },
    "ezTuneStabilityTips": {
        "message": "Defines long-term stabilization strength. Most modern quads should tolerate 'Stability' even up to 120-130. Usually does not have to be tuned at all. If UAV suffers from heavy propwash during vertical descent, lowering 'Stability' might help. It is a I-term equivalent"
    },
    "ezTuneAggressivenessTips": {
        "message": "Defines how fast your UAV will react to fast stick movements. Higher 'Aggressiveness' results in snappier fast manouvers. It does not affect stabilization, only stick feeling. It is a FF-term equivalent."
    },
    "ezTuneRateTips": {
        "message": "Defines how fast your UAV will rotate around roll, pitch and yaw axis. Higher 'Rate' results in faster rotation. Value of 0 is the equivalent of 300dps, 100 is the equivalent of 600dps, 200 is the equivalent of 900dps."
    },
    "ezTuneExpoTips": {
        "message": "Defines expo of the RC input. Lower values result in more sensitive stick in the center. Higher values result in less sensitive center and more rapid response at the end of the stick. Value of 0 is the equivalent of 0 expo, 100 is the equivalent of 0.7 expo, 200 is the equivalent of 1.0 expo."
    },
    "ezTunePidPreview": {
        "message": "PID preview"
    },
    "ezTuneRatePreview": {
        "message": "Rate preview"
    },
    "ezTuneRatePreviewAxis": {
        "message": "Axis"
    },
    "ezTuneRatePreviewRate": {
        "message": "Rate"
    },
    "ezTuneRatePreviewExpo": {
        "message": "Expo"
    },
    "ezTuneEnabledTips": {
        "message": "When enabled, <strong>Ez Tune</strong> will override multiple INAV setting to simplify the tuning process. Instead of setting each PID and filtering setting independently, you only have to work with 7 sliders. Ez Tune will automatically adjust all other settings to match your needs. Ez Tune is a great starting point for new users and a great way to quickly tune a new UAV. It is not recommended to use Ez Tune on advanced builds, as it will override all your settings and you will not be able to fine tune your UAV. When Ez Tune is enabled, settings from the <strong>PID tuning</strong> tab will be overriden by EzTune."
    },
    "ezTuneDisclaimer": {
        "message": "<strong>Disclaimer:</strong> Ez Tune is an experimental function. It is not guaranteed to work on all UAVs. It is not guaranteed to work with all frame types. It is not guaranteed to work with all propellers. All computations and tuning result can change in future versions of INAV. We still encourage you to check it out and share your experience on INAV Discord in the <strong>#ez-tune</strong> channel"
    },
    "ezTuneNote": {
        "message": "<strong>Important</strong> Ez Tune is enabled. All settings on this tab are set and controlled by the Ez Tune. To use PID Tuning tab you have to disable Ez Tune. To do it, uncheck the <strong>Enabled</strong> checkbox on the Ez Tune tab."
    },
    "gsActivated": {
        "message": "Ground station mode activated"
    },
    "gsDeactivated": {
        "message": "Ground station mode deactivated"
    },
    "gsTelemetry": {
        "message": "Telemetry"
    },
    "gsTelemetryLatitude": {
        "message": "Latitude"
    },
    "gsTelemetryLongitude": {
        "message": "Longitude"
    },
    "gsTelemetryAltitude": {
        "message": "Altitude"
    },
    "gsTelemetryAltitudeShort": {
        "message": "Alt"
    },
    "gsTelemetryVoltageShort": {
        "message": "Vbat"
    },
    "gsTelemetrySats": {
        "message": "Sats"
    },
    "gsTelemetryFix": {
        "message": "Fix"
    },
    "gsTelemetrySpeed": {
        "message": "Speed"
    },
    "maintenance": {
        "message": "Maintenance"
    },
    "maintenanceFlushSettingsCache": {
        "message": "Flush settings cache"
    },
    "gpsOptions": {
        "message": "GPS Options"
    },
    "gpsOptionsAssistnowToken": {
        "message": "AssitNow Token"
    },
    "gpsLoadAssistnowOfflineButton": {
        "message": "Load AssistNow Offline"
    },
    "gpsLoadAssistnowOnlineButton": {
        "message": "Load AssistNow Online"
    },
    "gpsAssistnowStart": {
        "message": "AssistNow data transfer starting..."
    },
    "gpsAssistnowDone": {
        "message": "AssistNow data transfer complete."
    },
    "gpsAssistnowUpdate": {
        "message": "AssistNow messages sent."
    },
    "gpsAssistnowLoadDataError": {
        "message": "Error loading AssistNow data."
    },
    "layerManagementTitle": {
        "message": "Map Layers"
    },
    "layerLoadGeoFile": {
        "message": "Load GEO File"
    },
    "layerDragDropHint": {
        "message": "or drag & drop GEO files onto the map"
    },
    "layerConfirmDelete": {
        "message": "Are you sure you want to delete this layer?"
    },
    "layerLoadError": {
        "message": "Error loading GEO file. Please check the file format."
    },
    "layerParseError": {
        "message": "Error parsing GEO file. Unsupported format or corrupted data."
    },
    "adsbVehicleTotalMessages": {
        "message": "Vehicle msgs"
    },
    "adsbHeartbeatTotalMessages": {
        "message": "Heartbeat msgs"
    },
    "currentLanguage": {
        "message": "en"
    },
    "search": {
        "message": "Search"
    },
    "tabJavaScriptProgramming": {
        "message": "JavaScript Programming"
    },
    "javascriptProgrammingDescription": {
        "message": "Write JavaScript code to control your aircraft. The transpiler converts your code into INAV Logic Conditions."
    },
    "javascriptBetaWarning": {
        "message": "<strong>Currently in beta, for testing. Do not use for safety-critical applications!</strong>"
    },
    "javascriptEditorTitle": {
        "message": "JavaScript Editor (shift-ctrl-v to paste, right-click a variable to rename)"
    },
    "javascriptLoadExample": {
        "message": "Load Example:"
    },
    "javascriptSelectExample": {
        "message": "-- Select Example --"
    },
    "javascriptTranspile": {
        "message": "Transpile to INAV"
    },
    "javascriptLoad": {
        "message": "Load from FC"
    },
    "javascriptSave": {
        "message": "Save to FC"
    },
    "javascriptClear": {
        "message": "Clear Editor"
    },
    "javascriptOutputTitle": {
        "message": "INAV Logic Conditions Output"
    },
    "javascriptLcCount": {
        "message": "$1 / $2 LCs"
    },
    "javascriptOptimizationsApplied": {
        "message": "Optimizations Applied:"
    },
    "javascriptApiReference": {
        "message": "API Reference & Examples"
    },
    "javascriptQuickReference": {
        "message": "Quick Reference"
    },
    "javascriptFlightParameters": {
        "message": "Flight Parameters (Read-Only)"
    },
    "javascriptRcChannels": {
        "message": "RC Channels"
    },
    "javascriptOverrides": {
        "message": "Overrides (Write)"
    },
    "javascriptGlobalVariables": {
        "message": "Global Variables"
    },
    "javascriptCompleteExample": {
        "message": "Complete Example"
    },
    "sensorProfileTitle": {
        "message": "Control profile — stores PID tuning, rates, and filtering settings"
    },
    "mixerProfileTitle": {
        "message": "Mixer profile — stores motor/servo mixing and output configuration"
    },
    "sensorBatteryProfileTitle": {
        "message": "Battery profile — stores voltage, capacity, and current sensor settings"
    },
    "gpsFixNotConnected": {
        "message": "<span class=\\"fixnone\\">Not connected</span>"
    },
    "receiverButtonSticksTitle": {
        "message": "Show a live stick input overlay for verifying receiver channels"
    },
    "searchPlaceholder": {
        "message": "Search settings..."
    },
    "backupRestoreButtonBackup": {
        "message": "Backup Config"
    },
    "backupRestoreButtonRestore": {
        "message": "Restore Config"
    },
    "backupRestoreOpenBackupsFolder": {
        "message": "Open Backups"
    },
    "backupRestoreStatusConnecting": {
        "message": "Connecting to flight controller..."
    },
    "backupRestoreStatusEnteringCli": {
        "message": "Entering CLI mode..."
    },
    "backupRestoreStatusReadingConfig": {
        "message": "Reading configuration (diff all)..."
    },
    "backupRestoreStatusSavingFile": {
        "message": "Saving backup file..."
    },
    "backupRestoreStatusExitingCli": {
        "message": "Exiting CLI (rebooting)..."
    },
    "backupRestoreStatusRestoringConfig": {
        "message": "Restoring configuration..."
    },
    "backupRestoreStatusSaving": {
        "message": "Saving and rebooting..."
    },
    "backupRestoreStatusBackupComplete": {
        "message": "Backup complete. Proceeding with flash..."
    },
    "backupRestoreBackupSaved": {
        "message": "Configuration backup saved to: $1"
    },
    "backupRestoreAutoBackupSaved": {
        "message": "Auto-backup saved to: $1"
    },
    "backupRestoreBackupComplete": {
        "message": "Backup complete."
    },
    "backupRestoreBackupCancelled": {
        "message": "Backup cancelled."
    },
    "backupRestoreBackupFailed": {
        "message": "Backup failed."
    },
    "backupRestoreRestoreComplete": {
        "message": "Configuration restored. Flight controller is rebooting."
    },
    "backupRestoreRestoreCancelled": {
        "message": "Restore cancelled."
    },
    "backupRestoreRestoreFailed": {
        "message": "Restore failed."
    },
    "backupRestoreFlashCompleteBackupSaved": {
        "message": "Flash complete. Configuration backup was saved."
    },
    "backupRestoreOverlayTitle": {
        "message": "Restoring Configuration"
    },
    "backupRestoreStatusRestoringProgress": {
        "message": "Restoring configuration... ($1 / $2)"
    },
    "backupRestoreRestoreAborted": {
        "message": "Restore aborted — settings were NOT saved."
    },
    "backupRestoreErrorTitle": {
        "message": "Errors During Restore"
    },
    "backupRestoreErrorText": {
        "message": "The following errors were reported by the flight controller. You can save the settings anyway or abort without saving."
    },
    "backupRestoreErrorAbort": {
        "message": "Abort (Don't Save)"
    },
    "backupRestoreErrorSave": {
        "message": "Save Anyway"
    },
    "backupRestoreFlashCompleteOfferRestore": {
        "message": "Flash complete. A backup was saved before flashing."
    },
    "backupRestoreAutoRestoreConfirm": {
        "message": "Full chip erase was performed. Would you like to restore the configuration backup that was saved before flashing?"
    },
    "backupRestoreAutoRestoreWaiting": {
        "message": "Waiting for flight controller to boot..."
    },
    "backupRestoreAutoRestoreYes": {
        "message": "Yes, Restore"
    },
    "backupRestoreAutoRestoreNo": {
        "message": "No, Skip"
    },
    "backupRestoreAutoRestoreWaitingPort": {
        "message": "Waiting for $1 to become available..."
    },
    "firmwareFlasherVersionWarningTitle": {
        "message": "⚠ Version Update Warning"
    },
    "firmwareFlasherVersionWarningText": {
        "message": "Updating from $1 to $2 without full chip erase can cause unpredictable issues or configuration corruption. Configurator will not restore your FC configuration automatically."
    },
    "firmwareFlasherVersionWarningContinue": {
        "message": "Continue without erase"
    },
    "firmwareFlasherVersionWarningCancel": {
        "message": "Cancel"
    },
    "backupRestoreMigrationApplied": {
        "message": "Migration applied: $1 → $2 ($3 changes)"
    },
    "backupRestoreMigrationWarningsHeader": {
        "message": "Migration Warnings:"
    },
    "backupRestoreDowngradeNoAutoRestore": {
        "message": "Major version downgrade detected. Auto-restore is not available — please restore your backup manually after verifying settings."
    },
    "migrationPreviewTitle": {
        "message": "Settings Migration Required"
    },
    "migrationPreviewSubtitle": {
        "message": "Your backup ($1) will be migrated to match the new firmware ($2). The following changes will be applied:"
    },
    "migrationPreviewRemovedHeader": {
        "message": "Removed settings ($1):"
    },
    "migrationPreviewRenamedSettingsHeader": {
        "message": "Renamed settings ($1):"
    },
    "migrationPreviewRenamedCommandsHeader": {
        "message": "Renamed commands ($1):"
    },
    "migrationPreviewValueReplacementsHeader": {
        "message": "Value replacements ($1):"
    },
    "migrationPreviewSettingRemappingsHeader": {
        "message": "Setting remappings ($1):"
    },
    "migrationPreviewContinue": {
        "message": "Continue with Restore"
    },
    "migrationPreviewCancel": {
        "message": "Cancel (Manual Review)"
    },
    "migrationMissingProfileWarning": {
        "message": "No migration profile available for version $1 → $2. Settings will be restored without conversion — some may fail or be ignored by the firmware."
    }
}
`;export{e as default};
