Skip to content

abbaye/WpfHexEditorIDE



🖥️ A full-featured open-source IDE for .NET — Binary analysis, reverse engineering & build tooling

.NET Platform IDE Version License: AGPL v3 Status Roadmap


🚧 Active Development — New features, editors and panels are being added regularly. The IDE application is under active construction. Contributions and feedback welcome!


WPF HexEditor IDE
WpfHexEditor — Full IDE with VS-style docking, project system, and multiple editors

The IDEEditorsControlsPanelsQuick StartDocsChangelog


🖥️ The IDE Application

WpfHexEditor is a full-featured binary analysis IDE for Windows, built entirely with WPF and .NET. It goes far beyond a simple hex editor — think Visual Studio for binary files.

🏗️ Project System

  • Solution & Project management (.whsln / .whproj)
  • Visual Studio .sln / .csproj / .vbproj — open and build VS solutions directly (#101–103 ✅ in progress)
  • MSBuild integration — build, rebuild, clean with output routed to the Build channel
  • Virtual & physical folders (like VS Solution Explorer)
  • Format versioning with auto-migration
  • Per-file state persistence (bookmarks, scroll, encoding)

🪟 VS-Style Docking (🔧 100% in-house engine)

  • Float, dock, auto-hide any panel
  • Colored tabs with per-document customization
  • 8 built-in themes (Dark, Light, VS2022Dark, DarkGlass, Minimal, Office, Cyberpunk, VisualStudio)
  • Tab placement left / right / bottom

📋 IDE Infrastructure

  • IDocumentEditor plugin contract — every editor is pluggable
  • Shared UndoEngine — coalescing (500 ms), transactions, save-point tracking; Ctrl+Z/Y/Shift+Z across all editors
  • Rectangular selection (Alt+Click) + drag-to-move — CodeEditor & TextEditor
  • VS2022-style status bar (edit mode, bytes/line, caret offset, LSP server state)
  • Output panel + Error/Diagnostics panel + Dockable Search Panel (Ctrl+Shift+F)
  • VS2026-style Options — document tab, auto-save, live theme preview
  • Integrated Terminal (Ctrl+`` ) — 31 built-in commands, panel/plugin/file management
  • Command Palette (Ctrl+Shift+P) — 9 modes: commands, LSP symbols, go-to-line, files, content grep, and more
  • Command SystemCommandRegistry (~45 commands), KeyBindingService, KeyboardShortcutsPage, TitleBar launcher
  • Plugin SystemWpfHexEditor.SDK open API, .whxplugin packages, Plugin Manager, IDE EventBus (39 types), Capability Registry, Extension Points, Dependency Graph, plugin signing
  • NuGet Solution Manager — Browse/Installed/Consolidate/Updates across all projects
  • DI InfrastructureAppServiceCollection (Microsoft.Extensions.DependencyInjection)

🔍 Binary Intelligence

  • 400+ file format auto-detection with format-aware editor routing
  • Parsed Fields Panel with structure overlay
  • Data Inspector — 40+ type interpretations
  • Assembly Explorer — .NET PE inspection, types, methods, fields; C# decompilation to Code Editor tab; Extract to Project; Collapse/Close All; Ctrl+Click external symbol decompilation (AppDomain + runtime + NuGet resolution) (#104-106 — in progress)
  • HexEditor control — 19 languages with instant switching (IDE UI is English only — full localization engine coming soon)

📝 Editors

WpfHexEditor uses a plugin architecture (IDocumentEditor) — every editor is a standalone, reusable component hosted in the docking system.

Editor Status Progress Description
Hex Editor ✅ Active ~75% Binary editing — insert/overwrite, 400+ format detection, search, bookmarks, TBL, status bar contributor
TBL Editor ✅ Active ~80% Character table editor for custom encodings and ROM hacking
Code Editor ✅ Active ~85% Multi-language code editor — VS-like navigation bar, 55+ language definitions (incl. F# + VB.NET), URL hover/click, find/replace, split view; Ctrl+Click cross-file nav + external symbol decompilation; Alt+Click rect selection; drag-to-move; shared UndoEngine; #region colorization; data-driven folding (4 strategies); word wrap; multi-caret (Ctrl+Alt+Click, Ctrl+D); gutter diagnostics + scrollbar markers; auto-close brackets/quotes + skip-over + wrap-selection; end-of-block hover hint (} / #endregion / </Tag>); word highlight (VS Code style); sticky scroll with line numbers (#160); Find All References (Shift+F12) + dockable panel + F8 nav; LSP breadcrumb bar, inlay hints, code lens, semantic tokens, code actions (Ctrl+.), rename (F2), signature help, workspace symbols
XAML Designer ✅ Active ~70% Full split-pane XAML designer — live WPF rendering canvas with bidirectional sync (canvas↔code, ~95%); move/resize/rotate handles; property inspector (F4); multi-select + alignment guides; snap grid; #region colorization; error card overlay; 4 split layouts (Ctrl+Shift+L); zoom/pan; VS-like Ctrl+Z/Y undo/redo with DesignHistoryPanel; Toolbox, Resource Browser, Design Data and Animation panels; right-click context menu; Ctrl+1/2/3 view modes
Text Editor ✅ Active ~50% Text editing with 26 embedded language definitions, auto-detection by extension, encoding support
Script Editor 🔧 Active ~10% .hxscript editor with syntax highlighting, run-in-terminal integration, HxScriptEngine backend (#177)
Image Viewer 🔧 Active ~50% Binary image viewer — zoom/pan, transform pipeline (rotate/flip/crop/resize), FileShare.ReadWrite for concurrent open
Tile Editor 🔧 Stub ~5% Tile-based graphic editor for ROM/binary assets — palette, zoom, pixel grid (#175)
Structure Editor 🔧 Active ~40% .whfmt binary template editor — block DataGrid, type/offset/length editing, live save
Entropy Viewer 🔧 Active ~45% Visual entropy graph of binary sections — detect encryption, compression, and packed regions
Diff / Changeset Viewer 🔧 Active ~70% Side-by-side binary comparison and changeset replay
Audio Viewer 🔧 Stub ~5% Audio binary viewer — waveform display (#174)
Disassembly Viewer 🔧 Active ~30% x86/x64/ARM binary disassembler — decompiler integration stub (#178)
Decompiled Source Viewer 🔜 Planned ~0% C# skeleton + full IL view via ILSpy backend; "Go to Metadata Token" navigation (#106)
Memory Snapshot Viewer 🔜 Planned ~0% Load Windows mini-dump .dmp / Linux core-dump; display memory regions, thread stacks, modules (#117)
PCAP / Network Capture Viewer 🔜 Planned ~0% Load .pcap / .pcapng; packet list, layer breakdown (Ethernet/IP/TCP/UDP/TLS), raw payload (#136)

Implementing a new editor? See IDocumentEditor contract and register via EditorRegistry.


🧩 Standalone Controls & Libraries

All controls are independently reusable — no IDE required. Drop any of them into your own WPF application with a simple project reference.

UI Controls

Control Frameworks Progress Description
HexEditor net8.0-windows ~80% Full-featured hex editor UserControl — MVVM, 16 services, insert/overwrite, search, bookmarks, TBL, 400+ format detection
HexBox net8.0-windows ~80% Lightweight hex input field — zero external dependencies, MVVM-ready
ColorPicker net8.0-windows ~95% Compact color picker UserControl with RGB/HSV/hex input
BarChart net48 | net8.0-windows ~85% Standalone byte-frequency bar chart — visualizes distribution of all 256 byte values (0x00–0xFF) in a binary file
Shell net8.0-windows ~65% Custom-built VS-style docking engine — float, dock, auto-hide, colored tabs, 8 themes — 100% in-house, zero third-party dependency (formerly WpfHexEditor.Docking.Wpf)

Libraries & Infrastructure

Library Frameworks Description
Core net8.0-windows ByteProvider, 16 services, data layer — the engine powering HexEditor
Editor.Core net8.0-windows IDocumentEditor plugin contract, editor registry, changeset system, shared interfaces
BinaryAnalysis net8.0 400+ format detection engine, binary templates, DataInspector service
Definitions net8.0-windows Embedded format catalog (400+ file signatures) and syntax definitions shared across editors and plugins
Events net8.0 IDE-wide typed event bus — IIDEEventBus, 10 built-in event types, weak-reference subscribers, rolling event log, IPC bridge for sandbox plugins
SDK net8.0-windows Public plugin API — IWpfHexEditorPlugin, IIDEHostContext, IUIRegistry, 15+ service contracts incl. IIDEEventBus, IPluginCapabilityRegistry, IExtensionRegistry, ITerminalService
PluginHost net8.0-windows Runtime plugin infrastructure — discovery, load, watchdog, PluginManagerControl, PermissionService
PluginSandbox net8.0-windows Out-of-process plugin execution host — HWND embedding, IPC menu/toolbar/event bridges, Job Object resource isolation, auto-isolation decision engine (#81)
Docking.Core net8.0-windows Abstract platform-agnostic docking contracts — DockEngine, layout model, DockItemState
Core.Terminal net8.0-windows Command engine — 31+ built-in commands, HxScriptEngine, CommandHistory, WriteTable output helper
Terminal net8.0-windows WPF terminal panel layer — TerminalPanel, TerminalPanelViewModel, multi-tab shell session management
Core.AssemblyAnalysis net8.0 BCL-only .NET PE analysis pipeline — PEReader + assembly model, foundation for Assembly Explorer plugin
Core.Decompiler net8.0-windows IDecompiler contract + stub backend for ILSpy/dnSpy integration (#106)
ProjectSystem net8.0-windows .whsln / .whproj workspace and project model — serialization, project-to-project references, dialogs
Options net8.0-windows AppSettingsService, OptionsEditorControl — IDE settings persistence and options page infrastructure

🗂️ IDE Panels

Panels connect to the active document automatically via the docking system.

Panel Progress Description
Parsed Fields Panel ~75% 400+ format detection — parsed field list with type overlay and inline editing
Data Inspector ~65% 40+ byte interpretations at caret position (int, float, GUID, date, color, …); plugin with settings page
Structure Overlay ~55% Visual field highlighting superimposed on the hex grid
Solution Explorer ~85% Project tree with virtual & physical folders, Show All Files, D&D from Windows Explorer, expand-state persistence, delete from disk; lazy source outline — expand any .cs/.xaml file to browse types and members with line-number navigation
Properties Panel ~60% Context-aware properties for the active document (F4) — auto-refresh on cursor idle (400 ms debounce), categorized groups, sort/copy/refresh toolbar
Error Panel ~70% Diagnostics and validation errors from any IDiagnosticSource editor
Output Panel ~75% Session log, file operation messages; Build channel with severity coloring (info/warn/error/success) auto-focused when build starts; source selector, clear, word wrap, copy, auto-scroll
Terminal Panel ~70% Integrated command terminal — 31+ commands, colored output, history, TerminalMode (Interactive/Script/ReadOnly), session export, plugin API via ITerminalService
Plugin Manager ~65% Browse, enable/disable, uninstall plugins; settings integration via IPluginWithOptions; themed toolbar with RelayCommand
Plugin Monitoring ~60% Real-time CPU% + memory charts per plugin; pure WPF Canvas + Polyline (no charting lib); rolling history, PerformanceCounter + GC polling at 1 s interval
Options ~75% VS2026-style settings document tab — 9 pages: theme, display, editing, behavior, status bar, plugins, auto-save
Quick Search Bar ~55% Inline Ctrl+F overlay (VSCode-style) — find next/prev, regex toggle, jump to Advanced
Advanced Search ~45% Full-featured search dialog — 5 modes: Hex, Text, Regex, TBL, Wildcard
File Diff ~30% Side-by-side binary comparison with diff navigation (F7/F8)
Assembly Explorer ~35% .NET PE tree — namespaces, types, methods, fields, events, resources; C# decompilation → Code Editor tab with syntax highlighting; Extract to Project; Collapse All / Close All (#104–106 in progress)
Archive Structure ~40% ZIP/archive tree view — browse entries, extract, inspect compressed file layouts inside the hex view
File Comparison ~45% Binary file comparison panel — byte-level diff between two files with synchronized scrolling
File Statistics ~55% Byte-frequency charts, entropy score, size breakdown, and format distribution for the active binary
Format Info ~60% Detailed format metadata panel — detected format, MIME type, magic bytes, section list, and known offsets
Pattern Analysis ~50% Pattern detection in binary data — highlight known byte sequences, data structures, and anomalies
Custom Parser Template ~40% Template-driven binary parser — define structures in a .bt-style schema, render parsed fields live

📸 Screenshots

🖥️ IDE Overview
VS-style docking with Solution Explorer, HexEditor and ParsedFieldsPanel

IDE Overview
🔬 Parsed Fields Panel — 400+ format auto-detection with structured field analysis
Parsed Fields
📝 Multi-Editor Tabs — HexEditor, TBL, JSON and Text editors side by side
Multiple Editors
🗂️ Solution Explorer — VS-style project tree with virtual and physical folders
Solution Explorer
📋 TBL Editor — Custom character table editor for ROM hacking and encodings
TBL Editor
🔴 Error Panel — Diagnostics and validation errors from active editors
Error Panel
📤 Output Panel — Session log, messages and file operation feedback
Output Panel
☀️ Light Theme — 8 built-in themes: Dark, Light, VS2022Dark, DarkGlass, and more
Light Theme
🎮 TBL Format Explained — Custom character table format for game ROM editing
TBL Explained

⚡ Quick Start

Run the IDE

git clone https://github.com/abbaye/WpfHexEditorIDE.git

Open WpfHexEditorControl.sln, set WpfHexEditor.App as startup project, and run.

IDE compatibility: Actively developed on Visual Studio 2026. Fully compatible with Visual Studio 2022 (v17.8+). JetBrains Rider is also supported.

Embed the HexEditor in your WPF app

Reference the projects:

<ProjectReference Include="..\WpfHexEditor.Core\WpfHexEditor.Core.csproj" />
<ProjectReference Include="..\WpfHexEditor.HexEditor\WpfHexEditor.HexEditor.csproj" />

Add to your XAML:

<Window xmlns:hex="clr-namespace:WpfHexEditor.HexEditor;assembly=WpfHexEditor.HexEditor">
  <hex:HexEditor FileName="data.bin" />
</Window>

NuGet: A legacy package (WPFHexaEditor) is still available on NuGet but is no longer maintained. NuGet packaging is planned (#109).

JetBrains Rider: Fully compatible — open the solution and press F5. SmartComplete (LSP) works out of the box.

Complete Tutorial →


🎯 Why Choose WPF HexEditor?

⚡ Built for Performance

  • DrawingContext rendering — handles GB+ files without freezing
  • LRU + SIMD + parallel search engine
  • Span<T> + pooling — minimal allocations
  • Async file I/O with progress throughout

🏗️ Clean Architecture

  • MVVM with 16+ specialized services
  • Partial classes organized by feature
  • Plugin editors via IDocumentEditor
  • 100% testable — zero UI in services
  • Open SDK — extend anything

🖥️ Full IDE Experience

  • Project system (.whsln / .whproj) — VS-like solution explorer
  • VS-style docking — 100% in-house, no third-party lib
  • 18 built-in themes — Dark, Light, Dracula, Nord, Tokyo Night, Catppuccin and more
  • Plugin system — open SDK + .whxplugin packages + sandbox signing
  • Integrated terminal — 31 built-in commands + macro recording
  • Command Palette (Ctrl+Shift+P) — 9 modes incl. file search + content grep
  • LSP Engine — full JSON-RPC client, 10 providers, breadcrumb bar, inlay hints
  • MSBuild / .sln — open and build Visual Studio solutions + incremental dirty tracking

🔍 Binary & Code Intelligence

  • 400+ formats auto-detected with format-aware routing
  • Parsed Fields with structure overlay
  • Data Inspector — 40+ type interpretations
  • Assembly Explorer — .NET PE tree + ILSpy decompilation (#104-106)

🌍 Multilingual Control

  • HexEditor control — 19 languages, instant runtime switching
  • IDE UI — English; full localization engine coming soon (#100)
  • Extensible — add new languages without recompiling

✅ Actively Maintained

  • AGPL v3.0 — fully open source
  • Active development — features added regularly
  • Unlimited Undo/Redo across all editors
  • Insert Mode, save reliability, async ops — production-grade
  • Contributions welcome — clean, documented codebase

🗺️ Roadmap

Full details in ROADMAP.md · Issue tracking in CHANGELOG.md — What's Next.

Feature Status Feature #
Sticky Scroll — scope header pinned at top; line numbers in gutter; 6 options; syntax-highlighted; allocation-free OnRender ✅ Done v0.6.3.7 #160
Find All ReferencesShift+F12; WorkspaceFileCache; dockable FindReferencesPanel; scope filter; F8/Shift+F8 nav; inline hints ✅ Done v0.6.3.7 #157
Auto-close Brackets & Quotes — auto-insert, skip-over, wrap-selection; 4 options; language-scoped ✅ Done v0.6.3.7 #163
Quick File OpenCtrl+P → Command Palette # file mode ✅ Done v0.6.3.7 #179
Integrated Debugger UI — Debug menu, toolbar pod, execution line highlight, gutter hover ghost, debug status bar, BreakpointInfoPopup, non-executable line validation ✅ Done v0.6.3.7 #44, #90
Workspace System.whidews ZIP+JSON format, 5 async handlers, layout/solution/file restore, options page ✅ Done v0.6.3.7 #77
F# / VB.NET Language Support.whfmt definitions, LSP servers, project templates, ILSpy decompilation ✅ Done v0.6.3.7
Compare Files OverkillDiffEngine + Myers/Binary/Semantic algorithms, GitDiffService, DiffExportService, SolutionExplorerCompareContributor, 14 DF_* tokens ✅ Done v0.6.3.7
DiffHub Document Viewer — full-tab DiffViewerDocument, word-level diff, overview ruler, Alt+Up/Down nav ✅ Done v0.6.3.7
End-of-Block Hover Hint — hover } / #endregion / </Tag> → VS-style popup with opening scope; ET_* tokens ✅ Done v0.6.3.7
Build Progress Bar — inline ProgressBar in build status bar item ✅ Done v0.6.3.7
InlineHints Pre-warming — solution open triggers background WorkspaceFileCache rebuild + line cache warm-up ✅ Done v0.6.3.7
Perf: Sticky Scroll — infinite render loop eliminated (100% CPU / 567 MB); O(N) scan; allocation-free OnRender; batch yields; search debounce ✅ Done v0.6.3.7
IDE EventBus — 39 typed events, IPC bridge, Phase 1–3 coverage ✅ Done v0.6.3.6 #80
Command PaletteCtrl+Shift+P, 9 modes (commands/symbols/line/files/grep/…), frequency boost, content grep ✅ Done v0.6.3.6 #133
Command System CentralCommandRegistry, KeyBindingService, KeyboardShortcutsPage, TitleBar launcher ✅ Done v0.6.3.6 #78
LSP Engine — full JSON-RPC client; 10 providers; completion, sig-help, code actions, rename, inlay hints, code lens, semantic tokens ✅ Done v0.6.3.6 #85–86
Code Editor — Phase 2 remaining — peek definition, code formatting, minimap, bracket pair colorization, smart indentation, column rulers, gutter change markers, expand/collapse all folds, color swatch preview 🔧 In Progress ~85% #158–168
Editors Phase 2 — TextEditor multi-caret/LSP, ImageViewer histogram/batch-export, DiffViewer 3-way merge, StructureEditor live sync, EntropyViewer export, AudioViewer full impl, TileEditor full impl, JsonEditor full impl, ScriptEditor debugger/REPL, DisassemblyViewer x86/ARM decoding 🔜 Planned #169–178
Plugins Phase 2 — AssemblyExplorer IlSpy backend, ArchiveStructure in-place edit, FileComparison diff algorithm + patch export, DiagnosticTools flame graph + leak heuristics 🔜 Planned #186–189
LSP Phase 3 + Roslyn — call hierarchy, linked editing, inline value hints, LSP 3.18 pull-diagnostics, Roslyn-based C#/VB.NET/F# parser 🔜 Planned #190–191
Document Model Phase 1IDocumentBuffer, LspBufferBridge, IBufferAwareEditor for all editors ✅ Done v0.6.3.6 #107
Diagnostic Tools Plugin — EventPipe CPU/mem graphs, heap snapshot, 4-tab panel ✅ Done v0.6.3.6
Dockable Search PanelCtrl+Shift+F; hex/text/regex/TBL modes ✅ Done v0.6.3.6
Incremental Build — dirty tracking FSW, BuildDirtyAsync(), Ctrl+Alt+F7, orange dot in Solution Explorer ✅ Done v0.6.3.6 #103
DI InfrastructureAppServiceCollection (Microsoft.Extensions.DependencyInjection) ✅ Done v0.6.3.6 #36
VS .sln / .csproj support + MSBuild build ✅ Done v0.5.0 #101–103
Assembly Explorer — .NET PE tree + C# decompilation → Code Editor tab 🔧 In Progress ~75% #104–106
Document Model Phase 2 — multi-editor collaboration, undo/redo unification, hex editor buffer 🔧 In Progress ~40% #107
Integrated Terminal — full multi-shell + macro 🔧 In Progress ~70% #92
Code Intelligence (SmartComplete / Snippets / AI suggestions) 🔜 Planned #86–89
Git Integration 🔜 Planned #91
Plugin Marketplace & Auto-Update 🔜 Planned #41–43
IDE Localization Engine — full IDE UI (HexEditor control already 19 languages) 🔜 Planned #100
Official Website — landing page, docs, downloads, plugin registry 🔜 Planned #108
Installable Package — MSI / MSIX / WinGet, auto-update, no SDK required 🔜 Planned #109
In-IDE Plugin Development — write, build, hot-reload and live-test SDK plugins without leaving the IDE 🔜 Planned #138

📚 Documentation

User Guides

Document Description
GETTING_STARTED.md Run the IDE or embed the control — step by step
FEATURES.md Complete feature list — IDE, editors, panels, controls
CHANGELOG.md Version history and what's new
MIGRATION.md Legacy V1 → migration guide (zero code changes required)

Developer Reference

Document Description
Architecture Overview System architecture, services, MVVM patterns
Core Systems ByteProvider, position mapping, undo/redo, rendering
Data Flow File, edit, search and save operation sequences
API Reference Full API documentation with code examples
Wiki — Getting Started Build, run, embed the control — step by step

🔧 Supported Frameworks

Framework Version Notes
.NET 8.0-windows Span<T>, SIMD, PGO — full performance unlocked

.NET Framework 4.8 support has been dropped. The project targets .NET 8.0+ exclusively to take full advantage of modern runtime performance, Span<T>, SIMD vectorization, and Profile-Guided Optimization (PGO). If you need .NET Framework support, use the legacy V1 NuGet package.


🌍 Multilingual

⚠️ HexEditor control only — The embedded HexEditorControl supports 19 languages with instant runtime switching (no restart required). The IDE UI is currently English only — a full localization engine for the IDE is planned (#100).

HexEditor control languages: English · French · Spanish · German · Italian · Japanese · Korean · Dutch · Polish · Portuguese · Russian · Swedish · Turkish · Chinese · Arabic · Hindi · and more

English and French are the most complete. Contributions welcome!


⭐ Support This Project

WPF HexEditor is 100% free and open source (GNU AGPL v3.0) — free to use, modify and distribute under the terms of the AGPL.

This project is developed in free time by passionate contributors. If you find it useful:

  • Star this repository — helps others discover the project
  • 🍴 Fork and contribute — pull requests are always welcome
  • 💬 Share feedback — report bugs or suggest features via GitHub Issues

Every star motivates us to keep building! 🙏


🤝 Contributing

We welcome contributions! The codebase is well-organized and documented:

  • Architecture Guide — service-based design and patterns
  • CONTRIBUTING.md — branch conventions, standards, how to submit a PR
  • Partial class structure — every feature in its own file, easy to navigate
  • Sample App — real integration to learn from

📝 License

GNU Affero General Public License v3.0 — free to use, modify and distribute. Any modified version distributed over a network must also be made available as open source. See LICENSE for details.


📧 Contact & Support



✨ WPF HexEditor ✨
A powerful, actively developed hex editor IDE for .NET

Created by Derek Tremblay (abbaye)
Contributors: Claude Sonnet 4.6, Claude Opus 4.6
HexEditor Legacy Contributors: ehsan69h, Janus Tida

Coded with ❤️ for the community! 😊🤟 (with a touch of AI magic ✨)


🚀 Quick Start📖 Tutorial📊 Features📝 Changelog⭐ Star Us


About

WpfHexEditor Studio is a full-featured IDE built with WPF and .NET 8, combining advanced binary editing, inspection, and reverse engineering in one environment; it supports .NET builds and Visual Studio solutions and aims to be a powerful open-source platform for binary analysis and .NET/Windows development.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Sponsor this project

 

Packages

 
 
 

Contributors

Languages