<ResourceDictionary
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:sys="clr-namespace:System;assembly=mscorlib">

    <!--  // Settings //  -->
    <sys:String x:Key="ResetLocation">Position Reset</sys:String>
    <sys:String x:Key="Settings">Settings</sys:String>
    <sys:String x:Key="ImageTranslate">Image Translate</sys:String>
    <sys:String x:Key="Administrator">Admin</sys:String>

    <!--  // Navigation //  -->
    <sys:String x:Key="General">General</sys:String>
    <sys:String x:Key="Services">Services</sys:String>
    <sys:String x:Key="Translate">Translate</sys:String>
    <sys:String x:Key="Ocr">Ocr</sys:String>
    <sys:String x:Key="Tts">Tts</sys:String>
    <sys:String x:Key="Vocabulary">Vocabulary</sys:String>
    <sys:String x:Key="Standalone">Standalone</sys:String>
    <sys:String x:Key="History">History</sys:String>
    <sys:String x:Key="Plugins">Plugins</sys:String>
    <sys:String x:Key="Hotkeys">Hotkeys</sys:String>
    <sys:String x:Key="Network">Network</sys:String>
    <sys:String x:Key="About">About</sys:String>

    <!--  // General Page //  -->
    <sys:String x:Key="TimeoutPlaceholder">Timeout (seconds)</sys:String>
    <sys:String x:Key="SearchFunction">Search Function</sys:String>
    <sys:String x:Key="SearchFunctionToolTip">Ctrl+F to search function</sys:String>
    <sys:String x:Key="Function">Function</sys:String>
    <sys:String x:Key="Appearance">Appearance</sys:String>
    <sys:String x:Key="General_AutoStartup">Auto Startup</sys:String>
    <sys:String x:Key="General_AutoStartupDescription">Automatically start the software when the computer starts.</sys:String>
    <sys:String x:Key="General_StartMode">Start Mode</sys:String>
    <sys:String x:Key="General_StartModeDescription">"SkipUACAdmin" will create a scheduled task to skip the UAC pop-up.</sys:String>
    <sys:String x:Key="General_HideOnStartup">Hide Window on System Startup</sys:String>
    <sys:String x:Key="General_HideOnStartupDescription">The search window is hidden in the tray after STranslate starts.</sys:String>
    <sys:String x:Key="General_HideWhenDeactivated">Auto Hide Window When Loses Focus</sys:String>
    <sys:String x:Key="General_WindowPosition">Main Window Location</sys:String>
    <sys:String x:Key="General_WindowAlign">Main Window Position on Monitor</sys:String>
    <sys:String x:Key="General_DisableGlobalHotkeys">Disable Global Hotkeys</sys:String>
    <sys:String x:Key="General_IgnoreHotkeysOnFullscreen">Ignore Hotkeys in Fullscreen Mode</sys:String>
    <sys:String x:Key="General_IgnoreHotkeysOnFullscreenDescription">Lower priority than "Disable Global Hotkeys", usually used in gaming scenarios.</sys:String>
    <sys:String x:Key="General_LanguageDetector">Language Detector</sys:String>
    <sys:String x:Key="General_DefaultSourceLanguage">Default Source Language</sys:String>
    <sys:String x:Key="General_DefaultSourceLanguageDescription">Use this language when auto detection fails.</sys:String>
    <sys:String x:Key="General_FirstLanguage">First Language</sys:String>
    <sys:String x:Key="General_FirstLanguageDescription">When the target language is set to Auto and the source language is another language (including the second language), the target language will use the first language.</sys:String>
    <sys:String x:Key="General_SecondLanguage">Second Language</sys:String>
    <sys:String x:Key="General_SecondLanguageDescription">When the target language is set to Auto and the source language is the first language, the target language will use the second language.</sys:String>
    <sys:String x:Key="General_HttpTimeout">Timeout</sys:String>
    <sys:String x:Key="General_HttpTimeoutDescription">Network request timeout in seconds.</sys:String>
    <sys:String x:Key="General_TranslateOnPaste">Translate on Paste</sys:String>
    <sys:String x:Key="General_TranslateOnPasteDescription">Execute translation immediately when text is pasted into the input box.</sys:String>
    <sys:String x:Key="General_LineBreakHandleType">Line Break Handling</sys:String>
    <sys:String x:Key="General_LineBreakHandleTypeDescription" xml:space="preserve">Includes line break handling for word selection, screenshot translation, clipboard, and silent OCR scenarios.&#10;"Remove extra line breaks" is mainly for PDF text extraction, removing redundant line breaks and sentence breaks, but it may affect non-PDF extraction.</sys:String>
    <sys:String x:Key="General_ImageQuality">Image Quality</sys:String>
    <sys:String x:Key="General_ImageQualityDescription">Adjust the quality when processing images. Online OCR services may limit image size.</sys:String>
    <sys:String x:Key="General_Language">Language</sys:String>
    <sys:String x:Key="General_ScreenshotTranslateInImage">In-Image Translation</sys:String>
    <sys:String x:Key="General_ScreenshotTranslateInImageDescription">Whether to enable in-image translation during screenshot translation.</sys:String>
    <sys:String x:Key="General_ScreenshotTranslateInImageButtonVisible">Show the In-Image Translation button on the main interface.</sys:String>
    <sys:String x:Key="General_ColorTheme">Color Theme</sys:String>
    <sys:String x:Key="General_ColorThemeDescription">Choose the color theme to display.</sys:String>
    <sys:String x:Key="General_ColorThemeButtonVisible">Show Color Theme button on main interface</sys:String>
    <sys:String x:Key="General_HideInputBox">Hide Input Box</sys:String>
    <sys:String x:Key="General_HideInputBoxDescription">Whether to hide the input box.</sys:String>
    <sys:String x:Key="General_HideInputBoxButtonVisible">Show Hide Input Box button on main interface</sys:String>
    <sys:String x:Key="General_HideLanguageControl">Hide Language Selection Control</sys:String>
    <sys:String x:Key="General_HideLanguageControlDescription">Whether to hide the language selection control when hiding the input box.</sys:String>
    <sys:String x:Key="General_ShowMouseHook">Show Mouse Hook</sys:String>
    <sys:String x:Key="General_ShowMouseHookDescription">Whether to display the quick enable/disable mouse word selection icon on the main interface.</sys:String>
    <sys:String x:Key="General_ShowHistoryNavigation">Show History Navigation</sys:String>
    <sys:String x:Key="General_ShowHistoryNavigationDescription">Whether to display forward/backward history translation navigation icons on the main interface.</sys:String>
    <sys:String x:Key="General_FontSize">Font Size</sys:String>
    <sys:String x:Key="General_FontSizeDescription">Adjust font size for all elements except the right-click context menu</sys:String>
    <sys:String x:Key="General_OutputShowingControl">Output Display Control</sys:String>
    <sys:String x:Key="General_ShowPascalCase">Show PascalCase copy button</sys:String>
    <sys:String x:Key="General_ShowCamelCase">Show camelCase copy button</sys:String>
    <sys:String x:Key="General_ShowSnakeCase">Show snake_case copy button</sys:String>
    <sys:String x:Key="General_ShowInsert">Show insert text button</sys:String>
    <sys:String x:Key="General_ShowBackTranslation">Show back translation button</sys:String>
    <sys:String x:Key="General_ShowPrompt">Show Prompt</sys:String>
    <sys:String x:Key="General_ShowPromptDescription">Whether to display the prompt switch button for AI translation services on the main interface</sys:String>
    <sys:String x:Key="General_FontFamily">FontFamily</sys:String>
    <sys:String x:Key="General_HistoryCount">History Count</sys:String>
    <sys:String x:Key="General_CopyAfterTranslation">Copy After Translation</sys:String>
    <sys:String x:Key="General_CopyAfterTranslationDescription">Only applies to services with "Automatic"</sys:String>
    <sys:String x:Key="General_CopyAfterTranslationNotAutomatic">Copy after translation for non-"Automatic" services</sys:String>

    <!--  // Hotkey Page //  -->
    <sys:String x:Key="GlobalHotkeys">Global Hotkeys</sys:String>
    <sys:String x:Key="SoftwareHotkeys">Software Hotkeys</sys:String>
    <sys:String x:Key="Hotkey_OpenSTranslate">Open STranslate</sys:String>
    <sys:String x:Key="Hotkey_OpenSTranslateDescription">Shortcut key to show/hide STranslate main interface.</sys:String>
    <sys:String x:Key="Hotkey_InputTranslate">Input Translate</sys:String>
    <sys:String x:Key="Hotkey_InputTranslateDescription">Shortcut key to open STranslate and clear content for input translation.</sys:String>
    <sys:String x:Key="Hotkey_CrosswordTranslate">Crossword Translate</sys:String>
    <sys:String x:Key="Hotkey_CrosswordTranslateDescription">Shortcut key to trigger translation of mouse-selected text.</sys:String>
    <sys:String x:Key="Hotkey_MouseHookTranslate">Mouse Hook Translate</sys:String>
    <sys:String x:Key="Hotkey_MouseHookTranslateDescription">Shortcut key to enable/disable listening for mouse text selection to trigger translation.</sys:String>
    <sys:String x:Key="Hotkey_ReplaceTranslate">Replace Translation</sys:String>
    <sys:String x:Key="Hotkey_ReplaceTranslateDescription">Shortcut key to translate the selected text and replace the original text.</sys:String>
    <sys:String x:Key="Hotkey_ScreenshotTranslate">Screenshot Translation</sys:String>
    <sys:String x:Key="Hotkey_ScreenshotTranslateDescription">Hotkey for capturing a selected screen area, recognizing the text, and translating it.</sys:String>
    <sys:String x:Key="Hotkey_SilentOcr">Silent OCR</sys:String>
    <sys:String x:Key="Hotkey_SilentOcrDescription">Hotkey for capturing a selected screen area, recognizing the text, and set it to the clipboard.</sys:String>
    <sys:String x:Key="Hotkey_SilentTts">Silent TTS</sys:String>
    <sys:String x:Key="Hotkey_SilentTtsDescription">The shortcut key for speech synthesis of selected Chinese text with the mouse.</sys:String>
    <sys:String x:Key="Hotkey_Ocr">OCR</sys:String>
    <sys:String x:Key="Hotkey_OcrDescription">Hotkey for opening the OCR window to recognize text.</sys:String>
    <sys:String x:Key="Hotkey_CancelOrHide">Cancel | Hide Interface</sys:String>
    <sys:String x:Key="Hotkey_CancelOrHideDescription">Cancel pending requests | Hide interface. Applies to all windows.</sys:String>
    <sys:String x:Key="Hotkey_MainWindow">Main Window Hotkey</sys:String>
    <sys:String x:Key="Hotkey_Exit">Exit application</sys:String>
    <sys:String x:Key="Hotkey_ToggleTopmost">Toggle Topmost</sys:String>
    <sys:String x:Key="Hotkey_ToggleColorTheme">Toggle Color Theme</sys:String>
    <sys:String x:Key="Hotkey_ToggleColorThemeDescription">Cycle through color themes (System/Light/Dark).</sys:String>
    <sys:String x:Key="Hotkey_ShowHideInputBox">Show/Hide Input Box</sys:String>
    <sys:String x:Key="Hotkey_OpenSettings">Open Settings</sys:String>
    <sys:String x:Key="Hotkey_OpenSettingsDescription">Open settings window when main window is open.</sys:String>
    <sys:String x:Key="Hotkey_OpenHistory">Open History</sys:String>
    <sys:String x:Key="Hotkey_SaveToVocabulary">Save To Vocabulary</sys:String>
    <sys:String x:Key="Hotkey_HistoryNavigePrevious">Navigate to previous history</sys:String>
    <sys:String x:Key="Hotkey_HistoryNavigeNext">Navigate to next history</sys:String>
    <sys:String x:Key="Hotkey_OcrImTransWindow">OCR | Image Translation Window Hotkey</sys:String>
    <sys:String x:Key="Hotkey_ReExecuteOcr">Re-execute Text Recognition | Image Translation</sys:String>
    <sys:String x:Key="Hotkey_SwitchImage">Switch Rendering/Annotation Image</sys:String>
    <sys:String x:Key="Hotkey_QrCode">Recognize QR Code</sys:String>
    <sys:String x:Key="Hotkey_QrCodeDescription">This hotkey is only supported in OCR window</sys:String>

    <!--  // Translation Page //  -->
    <sys:String x:Key="ReplaceService">Replace Trans</sys:String>
    <sys:String x:Key="ImTranService">Image Trans</sys:String>
    <sys:String x:Key="NoServiceEnabled">No Service Enabled</sys:String>
    <sys:String x:Key="AsReplaceSvc">Replace Translation</sys:String>
    <sys:String x:Key="AsImTranSvc">Image Translation</sys:String>
    <sys:String x:Key="TransExecMode">Translation Mode</sys:String>
    <sys:String x:Key="TransExecAutomatic">Auto Execute</sys:String>
    <sys:String x:Key="TransExecManual">Manual Execute</sys:String>
    <sys:String x:Key="TransExecPinned">Pin to Language Area for Manual Execute</sys:String>

    <!--  // Plugin Page //  -->
    <sys:String x:Key="AddPlugin">Add Plugin</sys:String>
    <sys:String x:Key="PluginName">Name</sys:String>
    <sys:String x:Key="PluginAuthor">Author</sys:String>
    <sys:String x:Key="PluginType">Type</sys:String>
    <sys:String x:Key="PluginVersion">Version</sys:String>
    <sys:String x:Key="SearchPlugin">Search Plugin</sys:String>
    <sys:String x:Key="SearchPluginToolTip">Ctrl+F to search plugins</sys:String>
    <sys:String x:Key="DropInstallPlugin">Release to install plugin</sys:String>

    <!--  // Network Page //  -->
    <sys:String x:Key="Network_EnableExternalCall">Enable external call</sys:String>
    <sys:String x:Key="Network_EnableExternalCallDescription">Enable or disable external call</sys:String>
    <sys:String x:Key="Network_ExternalCallPort">External Call Port</sys:String>
    <sys:String x:Key="Network_ExternalCallPortDescription">External call port, address is localhost</sys:String>
    <sys:String x:Key="Network_ExternalCallPortPlaceholder">e.g., 50020</sys:String>
    <sys:String x:Key="Network_EnableProxy">Enable Proxy</sys:String>
    <sys:String x:Key="Network_EnableProxyDescription">Enable or disable proxy functionality</sys:String>
    <sys:String x:Key="Network_ProxyType">Proxy Type</sys:String>
    <sys:String x:Key="Network_ProxyTypeDescription">Select the type of proxy server</sys:String>
    <sys:String x:Key="Network_ProxyAddress">Proxy Address</sys:String>
    <sys:String x:Key="Network_ProxyAddressPlaceholder">e.g., 127.0.0.1</sys:String>
    <sys:String x:Key="Network_ProxyPort">Proxy Port</sys:String>
    <sys:String x:Key="Network_ProxyPortPlaceholder">e.g., 8080</sys:String>
    <sys:String x:Key="Network_ProxyUsername">Username (Optional)</sys:String>
    <sys:String x:Key="Network_ProxyUsernameDescription">Enter the username if the proxy server requires authentication</sys:String>
    <sys:String x:Key="Network_ProxyUsernamePlaceholder">Proxy Username</sys:String>
    <sys:String x:Key="Network_ProxyPassword">Password (Optional)</sys:String>
    <sys:String x:Key="Network_ProxyPasswordDescription">Enter the password if the proxy server requires authentication</sys:String>
    <sys:String x:Key="Network_ProxyPasswordPlaceholder">Proxy Password</sys:String>
    <sys:String x:Key="Network_AdvancedSettingsDescription">Configure advanced proxy options</sys:String>
    <sys:String x:Key="Network_AdvancedSettings">Advanced Settings</sys:String>
    <sys:String x:Key="Network_AdvancedSettingsText">Advanced Configuration</sys:String>
    <sys:String x:Key="Network_BypassLocalDescription">Do not use proxy for local addresses</sys:String>
    <sys:String x:Key="Network_BypassLocal">Bypass Proxy for Local Addresses</sys:String>
    <sys:String x:Key="Network_BypassLocalOffContent">Use Proxy</sys:String>
    <sys:String x:Key="Network_BypassLocalOnContent">Do Not Use Proxy</sys:String>
    <sys:String x:Key="Network_BypassListDescription">List of addresses to bypass proxy, separated by semicolons</sys:String>
    <sys:String x:Key="Network_BypassList">Bypass List</sys:String>
    <sys:String x:Key="Network_BypassListPlaceholder">e.g., localhost;127.*;10.*;192.168.*</sys:String>
    <sys:String x:Key="Network_TestConnectionDescription">Test if the current proxy settings work correctly</sys:String>
    <sys:String x:Key="Network_TestConnection">Test Proxy Connection</sys:String>
    <sys:String x:Key="Network_TestConnectionButton">Test Connection</sys:String>
    <sys:String x:Key="Network_TestResult">Test Result</sys:String>
    <sys:String x:Key="Network_HttpTimeoutDescription">Set HTTP request timeout (seconds)</sys:String>
    <sys:String x:Key="Network_HttpTimeout">HTTP Timeout</sys:String>
    <sys:String x:Key="Network_HttpTimeoutPlaceholder">30</sys:String>
    <sys:String x:Key="Network_ResetSettingsDescription">Reset proxy settings to default values</sys:String>
    <sys:String x:Key="Network_ResetSettings">Actions</sys:String>
    <sys:String x:Key="Network_ResetSettingsButton">Reset Settings</sys:String>
    <sys:String x:Key="Network_HelpDescription">View detailed instructions for proxy settings</sys:String>
    <sys:String x:Key="Network_Help">Help</sys:String>
    <sys:String x:Key="Network_HelpText">Help Information</sys:String>
    <sys:String x:Key="Network_HelpProxyType">Proxy Type Explanation</sys:String>
    <sys:String x:Key="Network_HelpProxyTypeContent" xml:space="preserve">• System Proxy: Use system-configured proxy settings&#10;• HTTP Proxy: Standard HTTP proxy server&#10;• Socks5 Proxy: Supports TCP and UDP&#10;• No Proxy: Completely disable proxy functionality</sys:String>
    <sys:String x:Key="Network_HelpBypassList">Bypass List Format</sys:String>
    <sys:String x:Key="Network_HelpBypassListContent" xml:space="preserve">Use semicolons (;) to separate multiple addresses, supports wildcards (*):&#10;localhost;127.*;10.*;192.168.*;*.example.com</sys:String>
    <sys:String x:Key="Network_HelpEffectiveness">Effectiveness</sys:String>
    <sys:String x:Key="Network_HelpEffectivenessContent" xml:space="preserve">Changes to proxy settings take effect after 2 minutes&#10;Apply immediately need restart</sys:String>

    <!--  Standalone Page  -->
    <sys:String x:Key="Standalone_OcrShowAnnotationHeader">Show Annotation</sys:String>
    <sys:String x:Key="Standalone_OcrShowAnnotationDescription">Toggle between the original image and the text detection overlay.</sys:String>
    <sys:String x:Key="Standalone_OcrShowTextControlHeader">Show Text Panel</sys:String>
    <sys:String x:Key="Standalone_OcrShowTextControlDescription">Show or hide the text panel on the right side.</sys:String>
    <sys:String x:Key="Standalone_ImTranShowAnnotatedHeader">Show Annotation</sys:String>
    <sys:String x:Key="Standalone_ImTranShowAnnotatedDescription">Toggle between the translation result and the text detection overlay.</sys:String>
    <sys:String x:Key="Standalone_ImTranShowTextControlHeader">Show Text Panel</sys:String>
    <sys:String x:Key="Standalone_ImTranShowTextControlDescription">Show or hide the text panel on the right side.</sys:String>
    <sys:String x:Key="Standalone_LayoutAnalysisHeader">Layout Analysis Settings</sys:String>
    <sys:String x:Key="Standalone_LayoutAnalysisDescription">Configure how recognized text blocks are merged.</sys:String>
    <sys:String x:Key="Standalone_VerticalThresholdHeader">Vertical Adjacency Threshold Ratio</sys:String>
    <sys:String x:Key="Standalone_VerticalThresholdDescription" xml:space="preserve">Controls the merge sensitivity for vertically adjacent text blocks.&#10;0.1–0.3: Strict mode — only merge very close lines.&#10;0.5–0.8: Standard mode — merge lines within a paragraph.&#10;1.0–3.0: Loose mode — merge text blocks that are farther apart.&#10;&gt;5.0: Merge almost all vertically distributed text.</sys:String>
    <sys:String x:Key="Standalone_HorizontalThresholdHeader">Horizontal Adjacency Threshold Ratio</sys:String>
    <sys:String x:Key="Standalone_HorizontalThresholdDescription" xml:space="preserve">Controls the merge sensitivity for horizontally adjacent text blocks.&#10;0.1–0.3: Strict mode — merge only very close words.&#10;0.5–0.8: Standard mode — merge words within the same line.&#10;1.0–2.0: Loose mode — merge across columns.&#10;&gt;5.0: Merge almost all horizontally distributed text.</sys:String>
    <sys:String x:Key="Standalone_LineSpacingThresholdHeader">Line Break Detection Threshold Ratio</sys:String>
    <sys:String x:Key="Standalone_LineSpacingThresholdDescription" xml:space="preserve">Controls whether to insert line breaks when merging text.&#10;0.1–0.2: Strict line breaks — even small gaps cause new lines.&#10;0.3–0.5: Standard line breaks — suitable for most documents.&#10;0.8–1.0: Loose line breaks — only large gaps cause new lines.&#10;&gt;2.0: Almost no line breaks — text is merged continuously.</sys:String>
    <sys:String x:Key="Standalone_WordSpacingThresholdHeader">Word Spacing Detection Threshold Ratio</sys:String>
    <sys:String x:Key="Standalone_WordSpacingThresholdDescription" xml:space="preserve">Controls whether to insert spaces when merging text.&#10;0.1–0.2: Standard spacing.&#10;0.3–0.5: Loose spacing.&#10;&gt;1.0: Almost no spaces added.</sys:String>

    <!--  History Page  -->
    <sys:String x:Key="Total">Total</sys:String>
    <sys:String x:Key="Item">item</sys:String>
    <sys:String x:Key="HistorySearch">Input/Ctrl+F to search histories</sys:String>

    <!--  // About Page //  -->
    <sys:String x:Key="UserDataLocation">User Data Location</sys:String>
    <sys:String x:Key="UserDataLocationDescription">User settings and installed plugins are saved in the user data folder. This location may vary depending on whether it is in portable mode.</sys:String>
    <sys:String x:Key="OpenDirectory">Open Directory</sys:String>
    <sys:String x:Key="DeveloperTools">Developer Tools</sys:String>
    <sys:String x:Key="ClearCache">Clear Cache</sys:String>
    <sys:String x:Key="ClearLogs">Clear Logs</sys:String>
    <sys:String x:Key="SettingsDirectory">Settings Directory</sys:String>
    <sys:String x:Key="LogsDirectory">Logs Directory</sys:String>
    <sys:String x:Key="CacheDirectory">Cache Directory</sys:String>
    <sys:String x:Key="CloneRepository">Clone repository</sys:String>
    <sys:String x:Key="Website">Website</sys:String>
    <sys:String x:Key="Sponsor">Sponsor</sys:String>
    <sys:String x:Key="Group">Group</sys:String>
    <sys:String x:Key="Report">Find a bug or request new sample</sys:String>
    <sys:String x:Key="ConfirmDelete">Confirm Delete?</sys:String>
    <sys:String x:Key="ConfirmDeleteService">Are you sure you want to delete service '{0}'?</sys:String>
    <sys:String x:Key="Close">Close</sys:String>
    <sys:String x:Key="LogLevel">Log Level</sys:String>
    <sys:String x:Key="ConfirmRestartAndBackup">Confirm restart and backup configuration?</sys:String>
    <sys:String x:Key="ConfirmRestartAndRestore">Confirm restart and restore configuration?</sys:String>
    <sys:String x:Key="SelectBackupFile">Select Backup File</sys:String>
    <sys:String x:Key="SelectRestoreFile">Select Restore File</sys:String>
    <sys:String x:Key="BackupConfigSuccess">Configuration backup successful [{0}]</sys:String>
    <sys:String x:Key="RestoreConfigSuccess">Configuration restore successful [{0}]</sys:String>
    <sys:String x:Key="CheckConfigOrLog">Please check configuration or view logs</sys:String>
    <sys:String x:Key="BackupSuccess">Backup successful [{0}]</sys:String>
    <sys:String x:Key="BackupFailed">Backup failed, please check logs</sys:String>
    <sys:String x:Key="DownloadSuccess">Download successful</sys:String>
    <sys:String x:Key="DownloadFailed">Download failed: {0} {1}</sys:String>
    <sys:String x:Key="DownloadException">Download exception: {0}</sys:String>
    <sys:String x:Key="DeleteFailed">Delete failed: {0} {1}</sys:String>
    <sys:String x:Key="RenameFailed">Rename failed: {0} {1}</sys:String>
    <sys:String x:Key="RenameException">Rename exception: {0}</sys:String>
    <sys:String x:Key="BackupMethod">Backup Method</sys:String>
    <sys:String x:Key="BackupMethodDescription">Supports local and WebDav backup/restore. The software will automatically restart during the process</sys:String>
    <sys:String x:Key="WebDavAddress">WebDav Address</sys:String>
    <sys:String x:Key="WebDavUsername">WebDav Username</sys:String>
    <sys:String x:Key="WebDavPassword">WebDav Password</sys:String>
    <sys:String x:Key="Backup">Backup</sys:String>
    <sys:String x:Key="CreateBackup">Create Backup</sys:String>
    <sys:String x:Key="Restore">Restore</sys:String>
    <sys:String x:Key="RestoreBackup">Restore Backup</sys:String>
    <sys:String x:Key="Version">Version</sys:String>
    <sys:String x:Key="CheckUpdate">Check Update</sys:String>
    <sys:String x:Key="NoCheckUpdataInDev">Update checking is disabled in development mode</sys:String>

    <!--  // Common //  -->
    <sys:String x:Key="Add">Add</sys:String>
    <sys:String x:Key="Delete">Delete</sys:String>
    <sys:String x:Key="Overwrite">Overwrite</sys:String>
    <sys:String x:Key="Save">Save</sys:String>
    <sys:String x:Key="Confirm">Confirm</sys:String>
    <sys:String x:Key="Prompt">Prompt</sys:String>
    <sys:String x:Key="Cancel">Cancel</sys:String>
    <sys:String x:Key="Copy">Copy</sys:String>
    <sys:String x:Key="Show">Show</sys:String>
    <sys:String x:Key="Hide">Hide</sys:String>
    <sys:String x:Key="Enable">Enable</sys:String>
    <sys:String x:Key="Disable">Disable</sys:String>
    <sys:String x:Key="Open">Open</sys:String>
    <sys:String x:Key="Exit">Exit</sys:String>
    <sys:String x:Key="Reset">Reset</sys:String>
    <sys:String x:Key="Retry">Retry</sys:String>
    <sys:String x:Key="Duplicate">Duplicate</sys:String>
    <sys:String x:Key="Official">Official</sys:String>
    <sys:String x:Key="IdentifiedLanguageLabel">Identified</sys:String>
    <sys:String x:Key="On">On</sys:String>
    <sys:String x:Key="Off">Off</sys:String>

    <sys:String x:Key="Previous">Previous</sys:String>
    <sys:String x:Key="Next">Next</sys:String>

    <!--  // Input Control //  -->
    <sys:String x:Key="RemoveLineBreak">Remove Line Break</sys:String>
    <sys:String x:Key="RemoveSpace">Remove Space</sys:String>
    <sys:String x:Key="UseSettingLang">DetectFailed</sys:String>
    <sys:String x:Key="IdentifiedCache">Cache</sys:String>
    <sys:String x:Key="CopyServiceNotFound">Service {0} not found</sys:String>
    <sys:String x:Key="CopiedToClipboard">Copied '{0}' result</sys:String>

    <!--  // Language Part //  -->
    <sys:String x:Key="SwapLanguage">Swap Source-Target Language</sys:String>
    <sys:String x:Key="WaitingForPreviousExecution">Currently executing, please wait</sys:String>
    <sys:String x:Key="InputContentIsEmpty">Please enter content before executing</sys:String>

    <!--  // Output Control //  -->
    <sys:String x:Key="CopyAsPascalCase">Copy as PascalCase</sys:String>
    <sys:String x:Key="CopyAsCamelCase">Copy as camelCase</sys:String>
    <sys:String x:Key="CopyAsSnakeCase">Copy as snake_case</sys:String>
    <sys:String x:Key="InsertText">Insert Text</sys:String>
    <sys:String x:Key="BackTranslation">Back Translation</sys:String>

    <sys:String x:Key="ExecuteTranslation">Execute Translation</sys:String>
    <sys:String x:Key="AutoBackTranslation">Auto Trans Back</sys:String>
    <sys:String x:Key="ConfigureService">Configure Service</sys:String>
    <sys:String x:Key="CloseService">Close Service</sys:String>
    <sys:String x:Key="Paraphrase">Definition</sys:String>
    <sys:String x:Key="Expand">Expand</sys:String>

    <sys:String x:Key="TranslateCancel">Translate canceled</sys:String>
    <sys:String x:Key="TranslateFail">Translate failed</sys:String>

    <!--  // Prompt //  -->
    <sys:String x:Key="NewPrompt">New Prompt</sys:String>
    <sys:String x:Key="NewPromptSuffix">_New</sys:String>
    <sys:String x:Key="EditPrompt">Edit Prompt</sys:String>
    <sys:String x:Key="PromptList">Prompt List</sys:String>
    <sys:String x:Key="PromptDetails">Prompt Details</sys:String>
    <sys:String x:Key="PromptItemManagement">Prompt Item Management:</sys:String>
    <sys:String x:Key="AddPromptItem">Add Item</sys:String>
    <sys:String x:Key="RemovePromptItem">Remove Item</sys:String>
    <sys:String x:Key="Role">Role:</sys:String>
    <sys:String x:Key="CustomPromptInstructionTitle">💡 Custom Prompt Instructions</sys:String>
    <sys:String x:Key="CustomPromptInstructionDesc1">Customize LLM behavior with custom prompts.</sys:String>
    <sys:String x:Key="CustomPromptInstructionDesc2">Variable substitution:</sys:String>
    <sys:String x:Key="CustomPromptInstructionDesc3">→ source language</sys:String>
    <sys:String x:Key="CustomPromptInstructionDesc4">(OCR unavailable),</sys:String>
    <sys:String x:Key="CustomPromptInstructionDesc5">→ target language,</sys:String>
    <sys:String x:Key="CustomPromptInstructionDesc6">→ text to be translated</sys:String>

    <!--  // Hotkeys //  -->
    <sys:String x:Key="None">None</sys:String>
    <sys:String x:Key="HotkeyFunctionPrompt">Press the key you want to use for this function.</sys:String>
    <sys:String x:Key="RegisterHotkeyFailed">Failed to register hotkey "{0}". Please try again or check the log for details.</sys:String>
    <sys:String x:Key="UnregisterHotkeyFailed">Failed to unregister hotkey "{0}". Please try again or check the log for details.</sys:String>
    <sys:String x:Key="BindHotkey">Bind Hotkey</sys:String>
    <sys:String x:Key="HotkeyUnavailable">Current hotkey is unavailable.</sys:String>
    <sys:String x:Key="HotkeyOverwriteFailed">Failed to unbind hotkey during overwrite, restored.</sys:String>
    <sys:String x:Key="HotkeyUnavailableUneditable">This hotkey is reserved for "{0}" and can't be used. Please choose another hotkey.</sys:String>
    <sys:String x:Key="HotkeyUnavailableEditable">This hotkey is already in use by "{0}". If you press "Overwrite", it will be removed from "{0}".</sys:String>
    <!--  // Enum //  -->
    <sys:String x:Key="StartModeNormal">Normal</sys:String>
    <sys:String x:Key="StartModeAdmin">Admin</sys:String>
    <sys:String x:Key="StartModeSkipUACAdmin">SkipUACAdmin</sys:String>

    <sys:String x:Key="ColorSchemeDefault">System</sys:String>
    <sys:String x:Key="ColorSchemeLight">Light</sys:String>
    <sys:String x:Key="ColorSchemeDark">Dark</sys:String>

    <sys:String x:Key="LangEnumAuto">Auto</sys:String>
    <sys:String x:Key="LangEnumChineseSimplified">Chinese (Simplified)</sys:String>
    <sys:String x:Key="LangEnumChineseTraditional">Chinese (Traditional)</sys:String>
    <sys:String x:Key="LangEnumCantonese">Cantonese</sys:String>
    <sys:String x:Key="LangEnumEnglish">English</sys:String>
    <sys:String x:Key="LangEnumJapanese">Japanese</sys:String>
    <sys:String x:Key="LangEnumKorean">Korean</sys:String>
    <sys:String x:Key="LangEnumFrench">French</sys:String>
    <sys:String x:Key="LangEnumSpanish">Spanish</sys:String>
    <sys:String x:Key="LangEnumRussian">Russian</sys:String>
    <sys:String x:Key="LangEnumGerman">German</sys:String>
    <sys:String x:Key="LangEnumItalian">Italian</sys:String>
    <sys:String x:Key="LangEnumTurkish">Turkish</sys:String>
    <sys:String x:Key="LangEnumPortuguesePortugal">Portuguese (Portugal)</sys:String>
    <sys:String x:Key="LangEnumPortugueseBrazil">Portuguese (Brazil)</sys:String>
    <sys:String x:Key="LangEnumVietnamese">Vietnamese</sys:String>
    <sys:String x:Key="LangEnumIndonesian">Indonesian</sys:String>
    <sys:String x:Key="LangEnumThai">Thai</sys:String>
    <sys:String x:Key="LangEnumMalay">Malay</sys:String>
    <sys:String x:Key="LangEnumArabic">Arabic</sys:String>
    <sys:String x:Key="LangEnumHindi">Hindi</sys:String>
    <sys:String x:Key="LangEnumMongolianCyrillic">Mongolian (Cyrillic)</sys:String>
    <sys:String x:Key="LangEnumMongolianTraditional">Mongolian (Traditional)</sys:String>
    <sys:String x:Key="LangEnumKhmer">Khmer</sys:String>
    <sys:String x:Key="LangEnumNorwegianBokmal">Norwegian Bokmål</sys:String>
    <sys:String x:Key="LangEnumNorwegianNynorsk">Norwegian Nynorsk</sys:String>
    <sys:String x:Key="LangEnumPersian">Persian</sys:String>
    <sys:String x:Key="LangEnumSwedish">Swedish</sys:String>
    <sys:String x:Key="LangEnumPolish">Polish</sys:String>
    <sys:String x:Key="LangEnumDutch">Dutch</sys:String>
    <sys:String x:Key="LangEnumUkrainian">Ukrainian</sys:String>

    <sys:String x:Key="LanguageDetectorTypeLocal">Local Detection</sys:String>
    <sys:String x:Key="LanguageDetectorTypeBaidu">Baidu Detection</sys:String>
    <sys:String x:Key="LanguageDetectorTypeTencent">Tencent Detection</sys:String>
    <sys:String x:Key="LanguageDetectorTypeNiutrans">Niutrans Detection</sys:String>
    <sys:String x:Key="LanguageDetectorTypeBing">Bing Detection</sys:String>
    <sys:String x:Key="LanguageDetectorTypeYandex">Yandex Detection</sys:String>
    <sys:String x:Key="LanguageDetectorTypeGoogle">Google Detection</sys:String>
    <sys:String x:Key="LanguageDetectorTypeMicrosoft">Microsoft Detection</sys:String>

    <sys:String x:Key="LineBreakHandleTypeNone">Do not process line breaks</sys:String>
    <sys:String x:Key="LineBreakHandleTypeRemoveExtraLineBreak">Remove extra line breaks</sys:String>
    <sys:String x:Key="LineBreakHandleTypeRemoveAllLineBreak">Remove all line breaks</sys:String>
    <sys:String x:Key="LineBreakHandleTypeRemoveAllLineBreakWithoutSpace">Remove all line breaks (without space filling)</sys:String>

    <sys:String x:Key="PluginTypeAll">All Plugins</sys:String>
    <sys:String x:Key="PluginTypeTranslate">Translate</sys:String>
    <sys:String x:Key="PluginTypeOcr">Ocr</sys:String>
    <sys:String x:Key="PluginTypeTts">Tts</sys:String>
    <sys:String x:Key="PluginTypeVocabulary">Vocabulary</sys:String>

    <sys:String x:Key="ProxyTypeSystem">System</sys:String>
    <sys:String x:Key="ProxyTypeHttp">HTTP</sys:String>
    <sys:String x:Key="ProxyTypeSocks5">Socks5</sys:String>
    <sys:String x:Key="ProxyTypeNone">None</sys:String>

    <sys:String x:Key="LayoutAnalysisModeMergeAll">MergeAll</sys:String>
    <sys:String x:Key="LayoutAnalysisModeStrictParagraph">StrictParagraph</sys:String>
    <sys:String x:Key="LayoutAnalysisModeStandardDocument">StandardDocument</sys:String>
    <sys:String x:Key="LayoutAnalysisModeColumnDocument">ColumnDocument</sys:String>
    <sys:String x:Key="LayoutAnalysisModeNoMerge">NoMerge</sys:String>
    <sys:String x:Key="LayoutAnalysisModeUserDefined">UserDefined</sys:String>

    <sys:String x:Key="WindowScreenTypeRememberLastLaunchLocation">RememberLastLaunchLocation</sys:String>
    <sys:String x:Key="WindowScreenTypeCursor">Cursor</sys:String>
    <sys:String x:Key="WindowScreenTypeFocus">Focus</sys:String>
    <sys:String x:Key="WindowScreenTypePrimary">Primary</sys:String>
    <sys:String x:Key="WindowScreenTypeCustom">Custom</sys:String>

    <sys:String x:Key="WindowAlignTypeCenter">Center</sys:String>
    <sys:String x:Key="WindowAlignTypeCenterTop">CenterTop</sys:String>
    <sys:String x:Key="WindowAlignTypeLeftTop">LeftTop</sys:String>
    <sys:String x:Key="WindowAlignTypeRightTop">RightTop</sys:String>
    <sys:String x:Key="WindowAlignTypeCustom">Custom</sys:String>

    <sys:String x:Key="LogEventLevelVerbose">Verbose</sys:String>
    <sys:String x:Key="LogEventLevelDebug">Debug</sys:String>
    <sys:String x:Key="LogEventLevelInformation">Information</sys:String>
    <sys:String x:Key="LogEventLevelWarning">Warning</sys:String>
    <sys:String x:Key="LogEventLevelError">Error</sys:String>
    <sys:String x:Key="LogEventLevelFatal">Fatal</sys:String>

    <sys:String x:Key="OcrResultShowingTypeOriginal">Original</sys:String>
    <sys:String x:Key="OcrResultShowingTypeMarkdown">Markdown</sys:String>
    <sys:String x:Key="OcrResultShowingTypeLatex">Latex</sys:String>

    <sys:String x:Key="HistoryLimitNotSave">Don't Save</sys:String>
    <sys:String x:Key="HistoryLimitLimit100">100</sys:String>
    <sys:String x:Key="HistoryLimitLimit500">500</sys:String>
    <sys:String x:Key="HistoryLimitLimit1000">1000</sys:String>
    <sys:String x:Key="HistoryLimitLimit2000">2000</sys:String>
    <sys:String x:Key="HistoryLimitLimit5000">5000</sys:String>
    <sys:String x:Key="HistoryLimitUnlimited">Unlimited</sys:String>

    <sys:String x:Key="CopyAfterTranslationNoAction">NoAction</sys:String>
    <sys:String x:Key="CopyAfterTranslationFirst">First</sys:String>
    <sys:String x:Key="CopyAfterTranslationSecond">Second</sys:String>
    <sys:String x:Key="CopyAfterTranslationThird">Third</sys:String>
    <sys:String x:Key="CopyAfterTranslationFourth">Fourth</sys:String>
    <sys:String x:Key="CopyAfterTranslationFifth">Fifth</sys:String>
    <sys:String x:Key="CopyAfterTranslationSixth">Sixth</sys:String>
    <sys:String x:Key="CopyAfterTranslationSeventh">Seventh</sys:String>
    <sys:String x:Key="CopyAfterTranslationEighth">Eighth</sys:String>
    <sys:String x:Key="CopyAfterTranslationLast">Last</sys:String>

    <sys:String x:Key="BackupTypeLocal">Local</sys:String>
    <sys:String x:Key="BackupTypeWebDav">WebDav</sys:String>

    <sys:String x:Key="ImageQualityLow">Low</sys:String>
    <sys:String x:Key="ImageQualityMedium">Medium</sys:String>
    <sys:String x:Key="ImageQualityHigh">High</sys:String>

    <!--  // Plugins //  -->
    <sys:String x:Key="UnsupportedSourceLang">Unsupported source language</sys:String>
    <sys:String x:Key="UnsupportedTargetLang">Unsupported target language</sys:String>
    <sys:String x:Key="ValidationSuccess">Validation Success</sys:String>
    <sys:String x:Key="ValidationFailure">Validation Failure</sys:String>
    <sys:String x:Key="SelectPluginFile">Select Plugin File</sys:String>
    <sys:String x:Key="PluginInstallFailed">Plugin installation failed</sys:String>
    <sys:String x:Key="PluginInstallSuccess">Plugin installation success</sys:String>
    <sys:String x:Key="PluginDeleteConfirm" xml:space="preserve">Developer: {0}&#10;Version: {1}&#10;Are you sure you want to delete the plugin "{2}"?</sys:String>
    <sys:String x:Key="PluginDeleteFailed">Failed to delete the plugin</sys:String>
    <sys:String x:Key="PluginDeleteForRestart">The plugin has been marked for deletion. Restart to take effect.</sys:String>
    <sys:String x:Key="Ok">Ok</sys:String>
    <sys:String x:Key="PluginUpgrade">Plugin Upgrade</sys:String>
    <sys:String x:Key="PluginUpgradeConfirm">Plugin {0} is already installed with version {1}. Upgrade?</sys:String>
    <sys:String x:Key="PluginUpgradeSuccess">Plugin upgrade is ready, will take effect after restart</sys:String>
    <sys:String x:Key="PluginUpgradeFailed">Plugin upgrade failed</sys:String>
    <sys:String x:Key="BatchOperation">Batch Operation</sys:String>
    <sys:String x:Key="DeleteSelected">Delete Selected</sys:String>
    <sys:String x:Key="NoPluginSelected">No plugin selected</sys:String>
    <sys:String x:Key="BatchDeletePluginConfirm">Selected {0} plugin(s), confirm deletion?</sys:String>

    <!--  // Detect //  -->
    <sys:String x:Key="BaiduDetectError">Baidu detect error</sys:String>
    <sys:String x:Key="TencentDetectError">Tencent detect error</sys:String>
    <sys:String x:Key="NiutransDetectError">Niutrans detect error</sys:String>
    <sys:String x:Key="BingDetectError">Bing detect error</sys:String>
    <sys:String x:Key="YandexDetectError">Yandex detect error</sys:String>
    <sys:String x:Key="GoogleDetectError">Google detect error</sys:String>
    <sys:String x:Key="MicrosoftDetectError">Microsoft detect error</sys:String>

    <!--  // Services //  -->
    <sys:String x:Key="FilterService">Filter Service</sys:String>
    <sys:String x:Key="SearchService">Search Service</sys:String>
    <sys:String x:Key="SearchServiceTooltip">Ctrl+F to search services</sys:String>

    <!--  // Dictionary //  -->
    <sys:String x:Key="PlayPronunciation">Play Pronunciation</sys:String>
    <sys:String x:Key="Plural">Plural</sys:String>
    <sys:String x:Key="PastTense">Past Tense</sys:String>
    <sys:String x:Key="PastParticiple">Past Participle</sys:String>
    <sys:String x:Key="PresentParticiple">Present Participle</sys:String>
    <sys:String x:Key="ThirdPersonSingular">Third Person Singular</sys:String>
    <sys:String x:Key="Comparative">Comparative</sys:String>
    <sys:String x:Key="Superlative">Superlative</sys:String>

    <!--  // OCR Window //  -->
    <sys:String x:Key="SelectAll">Select All</sys:String>
    <sys:String x:Key="ImportFromClipboard">Import from Clipboard</sys:String>
    <sys:String x:Key="ImportFromFile">Import from File</sys:String>
    <sys:String x:Key="SaveAs">Save As</sys:String>
    <sys:String x:Key="ShowHideAnnotation">Show/Hide Annotation</sys:String>
    <sys:String x:Key="FitToWindow">Fit to Window</sys:String>
    <sys:String x:Key="ActualSize">Actual Size</sys:String>
    <sys:String x:Key="ShowText">Show Text</sys:String>
    <sys:String x:Key="HideText">Hide Text</sys:String>
    <sys:String x:Key="Recognize">Recognize</sys:String>
    <sys:String x:Key="RecognizeQrCode">Recognize QrCode</sys:String>
    <sys:String x:Key="NoQrCodeFound">No QrCode found</sys:String>
    <sys:String x:Key="NoLocationInfoTitle">No Location Info</sys:String>
    <sys:String x:Key="NoLocationInfoMessage">Unable to annotate or select text on the image.</sys:String>
    <sys:String x:Key="NoLocationInfoMessageForImTrans">Unable to annotate and display translation results on the graph.</sys:String>
    <sys:String x:Key="OcrSettingsToolTip" xml:space="preserve">Left Click -> Standalone Window Settings&#10;Ctrl+Left Click -> Text Recognition Settings</sys:String>

    <sys:String x:Key="RecognizeLanguage">Recognize Language</sys:String>
    <sys:String x:Key="TranslateLanguage">Translate Language</sys:String>
    <sys:String x:Key="ImTranSettingsToolTip" xml:space="preserve">Left Click -> Standalone Window Settings&#10;Ctrl+Left Click -> Text Recognition Settings&#10;Alt+Left Click -> Text Translation Settings</sys:String>

    <!--  // Snackbar Messages //  -->
    <sys:String x:Key="CopySuccess">Copied successfully</sys:String>
    <sys:String x:Key="CopyFailed">Copied failed</sys:String>
    <sys:String x:Key="NoCopyContent">No content to copy</sys:String>
    <sys:String x:Key="SaveSuccess">Saved successfully</sys:String>
    <sys:String x:Key="SaveFailed">Save failed</sys:String>
    <sys:String x:Key="NoImageToSave">No image to save</sys:String>
    <sys:String x:Key="NoImageInClipboard">No image in clipboard</sys:String>
    <sys:String x:Key="OperationSuccess">Operation successful</sys:String>
    <sys:String x:Key="OperationFailed">Operation failed</sys:String>
    <sys:String x:Key="OcrFailed">OCR Failed</sys:String>
    <sys:String x:Key="TtsFailed">TTS Failed</sys:String>
    <sys:String x:Key="ImtransFailed">Image translation failed</sys:String>
    <sys:String x:Key="NoTranslateService">No available translation service found</sys:String>
    <sys:String x:Key="NavigateFailed">Already at the end</sys:String>
    <sys:String x:Key="NoValidPluginFile">No SPKG File</sys:String>

    <!--  // Processing Messages //  -->
    <sys:String x:Key="RecognizingImageText">Recognizing text in the image...</sys:String>
    <sys:String x:Key="TranslatingText">Translating text...</sys:String>

    <!--  // For Plugins //  -->
    <sys:String x:Key="PluginTranslateAutoBackTranslation">Back Translation</sys:String>
    <sys:String x:Key="PluginTranslateAutoBackTranslationDescription">Automatically perform back translation after translation</sys:String>
    <sys:String x:Key="PluginTranslateValidate">Validate</sys:String>
    <sys:String x:Key="PluginTranslateValidateDescription">Test whether the API connection and configuration are correct</sys:String>

    <!--  // Updater Service //  -->
    <sys:String x:Key="UpdateCheck">Update Check</sys:String>
    <sys:String x:Key="CheckingForUpdates">Checking for updates...</sys:String>
    <sys:String x:Key="NoUpdateInfoFound">No update info found.</sys:String>
    <sys:String x:Key="AlreadyLatestVersion">You are already on the latest version.</sys:String>
    <sys:String x:Key="UpdateAvailable">Update Available</sys:String>
    <sys:String x:Key="NewVersionFound">New version {0} found. Updating...</sys:String>
    <sys:String x:Key="PortableDataMoveError">STranslate was not able to move your user profile data to the new update version.&#10;Please manually move your profile data folder from {0} to {1}</sys:String>
    <sys:String x:Key="UpdateReady">Update Ready</sys:String>
    <sys:String x:Key="UpdateFailed">Update Failed</sys:String>
    <sys:String x:Key="UpdateFailedMessage">Failed to update the application. Please check your connection.</sys:String>
    <sys:String x:Key="NewVersionTips">New version {0} is available, would you like to restart STranslate to use the update?</sys:String>
</ResourceDictionary>