diff --git a/Extensions.cs b/Extensions.cs
new file mode 100644
index 0000000..86b9a33
--- /dev/null
+++ b/Extensions.cs
@@ -0,0 +1,44 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace processor
+{
+ internal static class Extensions
+ {
+ internal static string RemoveComment(string text)
+ {
+ int idx = text.LastIndexOf("#");
+ return idx > 0 ? text.Substring(0, idx) : "";
+ }
+
+ ///
+ /// Removes leading 0x prefix in hexadecimal instructions, only returning 4 char part
+ ///
+ ///
+ ///
+ internal static string RemoveLeading(string text)
+ {
+ if (text.Contains("0x")) return text.Remove(0, 2);
+ MessageBox.Show("Error while parsing code:\nHexadecimal instruction codes must start with \"0x\"!", "Vole Language Parser");
+ return "";
+ }
+
+ public static IEnumerable Split2(this string text)
+ {
+ for (int i = 0; i < text.Length; i += 2)
+ yield return text.Substring(i, Math.Min(2, text.Length - i));
+ }
+
+ internal static string ToBin(this int value) => Convert.ToString(value, 2).PadLeft(8, '0');
+
+ internal static string ToHex(this int value) => Convert.ToString(value, 16);
+
+ internal static string ToHex2(this int value) => value.ToHex().PadLeft(2, '0');
+
+ internal static int Hex2Int(this string value) => Convert.ToInt32(value, 8);
+ }
+}