diff --git a/Filtration.Tests/Filtration.Tests.csproj b/Filtration.Tests/Filtration.Tests.csproj
index d623069..3eaad95 100644
--- a/Filtration.Tests/Filtration.Tests.csproj
+++ b/Filtration.Tests/Filtration.Tests.csproj
@@ -1,121 +1,120 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
-  <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProjectGuid>{E0693972-72C5-4E05-A9C5-A5943E4015C6}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>Filtration.Tests</RootNamespace>
-    <AssemblyName>Filtration.Tests</AssemblyName>
-    <TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-    <TargetFrameworkProfile />
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>bin\Debug\</OutputPath>
-    <DefineConstants>DEBUG;TRACE</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>bin\Release\</OutputPath>
-    <DefineConstants>TRACE</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="Castle.Core, Version=3.3.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
-      <HintPath>..\packages\Castle.Core.3.3.3\lib\net45\Castle.Core.dll</HintPath>
-      <Private>True</Private>
-    </Reference>
-    <Reference Include="FluentAssertions, Version=4.19.2.0, Culture=neutral, PublicKeyToken=33f2691a05b67b6a, processorArchitecture=MSIL">
-      <HintPath>..\packages\FluentAssertions.4.19.2\lib\net45\FluentAssertions.dll</HintPath>
-    </Reference>
-    <Reference Include="FluentAssertions.Core, Version=4.19.2.0, Culture=neutral, PublicKeyToken=33f2691a05b67b6a, processorArchitecture=MSIL">
-      <HintPath>..\packages\FluentAssertions.4.19.2\lib\net45\FluentAssertions.Core.dll</HintPath>
-    </Reference>
-    <Reference Include="Moq, Version=4.5.30.0, Culture=neutral, PublicKeyToken=69f491c39445e920, processorArchitecture=MSIL">
-      <HintPath>..\packages\Moq.4.5.30\lib\net45\Moq.dll</HintPath>
-    </Reference>
-    <Reference Include="nunit.framework, Version=3.6.1.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
-      <HintPath>..\packages\NUnit.3.6.1\lib\net45\nunit.framework.dll</HintPath>
-    </Reference>
-    <Reference Include="PresentationCore" />
-    <Reference Include="System" />
-    <Reference Include="System.Core" />
-    <Reference Include="System.Xml.Linq" />
-    <Reference Include="System.Data.DataSetExtensions" />
-    <Reference Include="Microsoft.CSharp" />
-    <Reference Include="System.Data" />
-    <Reference Include="System.Xml" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="Properties\AssemblyInfo.cs" />
-    <Compile Include="Properties\Resources.Designer.cs">
-      <AutoGen>True</AutoGen>
-      <DesignTime>True</DesignTime>
-      <DependentUpon>Resources.resx</DependentUpon>
-    </Compile>
-    <Compile Include="Repositories\TestItemFilterScriptRepository.cs" />
-    <Compile Include="Services\TestHTTPService.cs" />
-    <Compile Include="Services\TestItemFilterPersistenceService.cs" />
-    <Compile Include="Services\TestStaticDataService.cs" />
-    <Compile Include="Services\TestUpdateService.cs" />
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="app.config" />
-    <None Include="packages.config" />
-  </ItemGroup>
-  <ItemGroup>
-    <Folder Include="Models\" />
-    <Folder Include="Resources\" />
-    <Folder Include="Translators\" />
-    <Folder Include="ViewModels\" />
-  </ItemGroup>
-  <ItemGroup>
-    <ProjectReference Include="..\Filtration.Common\Filtration.Common.csproj">
-      <Project>{8cb44f28-2956-4c2a-9314-72727262edd4}</Project>
-      <Name>Filtration.Common</Name>
-    </ProjectReference>
-    <ProjectReference Include="..\Filtration.Interface\Filtration.Interface.csproj">
-      <Project>{0f333344-7695-47b2-b0e6-172e4de74819}</Project>
-      <Name>Filtration.Interface</Name>
-    </ProjectReference>
-    <ProjectReference Include="..\Filtration.ObjectModel\Filtration.ObjectModel.csproj">
-      <Project>{4aac3beb-1dc1-483e-9d11-0e9334e80227}</Project>
-      <Name>Filtration.ObjectModel</Name>
-    </ProjectReference>
-    <ProjectReference Include="..\Filtration.Parser.Interface\Filtration.Parser.Interface.csproj">
-      <Project>{46383F20-02DF-48B4-B092-9088FA4ACD5A}</Project>
-      <Name>Filtration.Parser.Interface</Name>
-    </ProjectReference>
-    <ProjectReference Include="..\Filtration\Filtration.csproj">
-      <Project>{55e0a34c-e039-43d7-a024-a4045401cdda}</Project>
-      <Name>Filtration</Name>
-    </ProjectReference>
-  </ItemGroup>
-  <ItemGroup>
-    <EmbeddedResource Include="Properties\Resources.resx">
-      <Generator>ResXFileCodeGenerator</Generator>
-      <LastGenOutput>Resources.Designer.cs</LastGenOutput>
-    </EmbeddedResource>
-  </ItemGroup>
-  <ItemGroup>
-    <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
-  </ItemGroup>
-  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProjectGuid>{E0693972-72C5-4E05-A9C5-A5943E4015C6}</ProjectGuid>
+    <OutputType>Library</OutputType>
+    <AppDesignerFolder>Properties</AppDesignerFolder>
+    <RootNamespace>Filtration.Tests</RootNamespace>
+    <AssemblyName>Filtration.Tests</AssemblyName>
+    <TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
+    <FileAlignment>512</FileAlignment>
+    <TargetFrameworkProfile />
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug\</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <DebugType>pdbonly</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>bin\Release\</OutputPath>
+    <DefineConstants>TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="Castle.Core, Version=3.3.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
+      <HintPath>..\packages\Castle.Core.3.3.3\lib\net45\Castle.Core.dll</HintPath>
+      <Private>True</Private>
+    </Reference>
+    <Reference Include="FluentAssertions, Version=4.19.2.0, Culture=neutral, PublicKeyToken=33f2691a05b67b6a, processorArchitecture=MSIL">
+      <HintPath>..\packages\FluentAssertions.4.19.2\lib\net45\FluentAssertions.dll</HintPath>
+    </Reference>
+    <Reference Include="FluentAssertions.Core, Version=4.19.2.0, Culture=neutral, PublicKeyToken=33f2691a05b67b6a, processorArchitecture=MSIL">
+      <HintPath>..\packages\FluentAssertions.4.19.2\lib\net45\FluentAssertions.Core.dll</HintPath>
+    </Reference>
+    <Reference Include="Moq, Version=4.5.30.0, Culture=neutral, PublicKeyToken=69f491c39445e920, processorArchitecture=MSIL">
+      <HintPath>..\packages\Moq.4.5.30\lib\net45\Moq.dll</HintPath>
+    </Reference>
+    <Reference Include="nunit.framework, Version=3.6.1.0, Culture=neutral, PublicKeyToken=2638cd05610744eb, processorArchitecture=MSIL">
+      <HintPath>..\packages\NUnit.3.6.1\lib\net45\nunit.framework.dll</HintPath>
+    </Reference>
+    <Reference Include="PresentationCore" />
+    <Reference Include="System" />
+    <Reference Include="System.Core" />
+    <Reference Include="System.Xml.Linq" />
+    <Reference Include="System.Data.DataSetExtensions" />
+    <Reference Include="Microsoft.CSharp" />
+    <Reference Include="System.Data" />
+    <Reference Include="System.Xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="Properties\AssemblyInfo.cs" />
+    <Compile Include="Properties\Resources.Designer.cs">
+      <AutoGen>True</AutoGen>
+      <DesignTime>True</DesignTime>
+      <DependentUpon>Resources.resx</DependentUpon>
+    </Compile>
+    <Compile Include="Repositories\TestItemFilterScriptRepository.cs" />
+    <Compile Include="Services\TestHTTPService.cs" />
+    <Compile Include="Services\TestItemFilterPersistenceService.cs" />
+    <Compile Include="Services\TestUpdateService.cs" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="app.config" />
+    <None Include="packages.config" />
+  </ItemGroup>
+  <ItemGroup>
+    <Folder Include="Models\" />
+    <Folder Include="Resources\" />
+    <Folder Include="Translators\" />
+    <Folder Include="ViewModels\" />
+  </ItemGroup>
+  <ItemGroup>
+    <ProjectReference Include="..\Filtration.Common\Filtration.Common.csproj">
+      <Project>{8cb44f28-2956-4c2a-9314-72727262edd4}</Project>
+      <Name>Filtration.Common</Name>
+    </ProjectReference>
+    <ProjectReference Include="..\Filtration.Interface\Filtration.Interface.csproj">
+      <Project>{0f333344-7695-47b2-b0e6-172e4de74819}</Project>
+      <Name>Filtration.Interface</Name>
+    </ProjectReference>
+    <ProjectReference Include="..\Filtration.ObjectModel\Filtration.ObjectModel.csproj">
+      <Project>{4aac3beb-1dc1-483e-9d11-0e9334e80227}</Project>
+      <Name>Filtration.ObjectModel</Name>
+    </ProjectReference>
+    <ProjectReference Include="..\Filtration.Parser.Interface\Filtration.Parser.Interface.csproj">
+      <Project>{46383F20-02DF-48B4-B092-9088FA4ACD5A}</Project>
+      <Name>Filtration.Parser.Interface</Name>
+    </ProjectReference>
+    <ProjectReference Include="..\Filtration\Filtration.csproj">
+      <Project>{55e0a34c-e039-43d7-a024-a4045401cdda}</Project>
+      <Name>Filtration</Name>
+    </ProjectReference>
+  </ItemGroup>
+  <ItemGroup>
+    <EmbeddedResource Include="Properties\Resources.resx">
+      <Generator>ResXFileCodeGenerator</Generator>
+      <LastGenOutput>Resources.Designer.cs</LastGenOutput>
+    </EmbeddedResource>
+  </ItemGroup>
+  <ItemGroup>
+    <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
+  </ItemGroup>
+  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
   <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
        Other similar extension points exist, see Microsoft.Common.targets.
   <Target Name="BeforeBuild">
   </Target>
   <Target Name="AfterBuild">
   </Target>
-  -->
+  -->
 </Project>
\ No newline at end of file
diff --git a/Filtration.Tests/Services/TestStaticDataService.cs b/Filtration.Tests/Services/TestStaticDataService.cs
deleted file mode 100644
index e1ddb3f..0000000
--- a/Filtration.Tests/Services/TestStaticDataService.cs
+++ /dev/null
@@ -1,44 +0,0 @@
-using Filtration.Common.Services;
-using Filtration.Services;
-using Moq;
-using NUnit.Framework;
-
-namespace Filtration.Tests.Services
-{
-    [TestFixture]
-    public class TestStaticDataService
-    {
-        [Test]
-        public void Constructor_CallsFileSystemService()
-        {
-            // Arrange
-
-            var mockFileSystemService = new Mock<IFileSystemService>();
-            mockFileSystemService.Setup(f => f.ReadFileAsString(It.IsAny<string>())).Returns("TestResult").Verifiable();
-
-            var service = new StaticDataService(mockFileSystemService.Object);
-
-            // Act
-            
-            // Assert
-            mockFileSystemService.Verify();
-        }
-
-        [Ignore("Integration Test")]
-        [Test]
-        public void Constructor_ReadsFromFileCorrectly()
-        {
-            // Arrange
-
-            var fileSystemService = new FileSystemService();
-
-            var service = new StaticDataService(fileSystemService);
-
-            // Act
-
-            // Assert
-            
-        }
-
-    }
-}
diff --git a/Filtration/Filtration.csproj b/Filtration/Filtration.csproj
index 0c360f3..ad6f4ae 100644
--- a/Filtration/Filtration.csproj
+++ b/Filtration/Filtration.csproj
@@ -438,6 +438,7 @@
       <DependentUpon>Settings.settings</DependentUpon>
       <DesignTimeSharedInput>True</DesignTimeSharedInput>
     </Compile>
+    <EmbeddedResource Include="Resources\ItemMods.txt" />
     <Resource Include="Resources\loading_spinner.gif" />
     <EmbeddedResource Include="Properties\Resources.resx">
       <Generator>ResXFileCodeGenerator</Generator>
diff --git a/Filtration/Properties/Resources.Designer.cs b/Filtration/Properties/Resources.Designer.cs
index 94cfe04..a7da90f 100644
--- a/Filtration/Properties/Resources.Designer.cs
+++ b/Filtration/Properties/Resources.Designer.cs
@@ -225,34 +225,36 @@ namespace Filtration.Properties {
         }
         
         /// <summary>
-        ///   Looks up a localized string similar to A Mother&apos;s Parting Gift
-        ///Abandoned Wealth
-        ///Aberrant Fossil
-        ///Abyssal Axe
-        ///Abyssal Cry
-        ///Abyssal Sceptre
-        ///Academy Map
-        ///Acid Lakes Map
-        ///Added Chaos Damage Support
-        ///Added Cold Damage Support
-        ///Added Fire Damage Support
-        ///Added Lightning Damage Support
-        ///Additional Accuracy Support
-        ///Aetheric Fossil
-        ///Agate Amulet
-        ///Albino Rhoa Feather
-        ///Alchemy Shard
-        ///Alder Spiked Shield
-        ///Alira&apos;s Amulet
-        ///Alleyways Map
-        ///Allflame
-        ///Alloyed Spiked Shield
-        ///Alteration Shard
-        ///Amber Amulet
-        ///Ambush Boots
-        ///Ambush Leaguestone
-        ///Ambush Mitts
-        ///Ambus [rest of string was truncated]&quot;;.
+        ///   Looks up a localized string similar to A Mother&apos;s Parting Gift
+        ///Abandoned Wealth
+        ///Aberrant Fossil
+        ///Abyssal Axe
+        ///Abyssal Cry
+        ///Abyssal Sceptre
+        ///Academy Map
+        ///Acid Lakes Map
+        ///Added Chaos Damage Support
+        ///Added Cold Damage Support
+        ///Added Fire Damage Support
+        ///Added Lightning Damage Support
+        ///Additional Accuracy Support
+        ///Aetheric Fossil
+        ///Agate Amulet
+        ///Albino Rhoa Feather
+        ///Alchemy Shard
+        ///Alder Spiked Shield
+        ///Alira&apos;s Amulet
+        ///Alleyways Map
+        ///Allflame
+        ///Alloyed Spiked Shield
+        ///Alteration Shard
+        ///Amber Amulet
+        ///Ambush Boots
+        ///Ambush Leaguestone
+        ///Ambush Mitts
+        ///Ambusher
+        ///Amethyst Flask
+        ///Amethyst [rest of string was truncated]&quot;;.
         /// </summary>
         internal static string ItemBaseTypes {
             get {
@@ -261,49 +263,53 @@ namespace Filtration.Properties {
         }
         
         /// <summary>
-        ///   Looks up a localized string similar to Abyss Jewel
-        ///Active Skill Gems
-        ///Amulets
-        ///Axe
-        ///Belts
-        ///Body Armours
-        ///Boots
-        ///Bows
-        ///Claws
-        ///Currency
-        ///Daggers
-        ///Delve Socketable Currency
-        ///Divination Card
-        ///Fishing Rods
-        ///Flasks
-        ///Gems
-        ///Gloves
-        ///Helmets
-        ///Hybrid Flasks
-        ///Incursion Item
-        ///Jewel
-        ///Labyrinth Item
-        ///Labyrinth Map Item
-        ///Labyrinth Trinket
-        ///Large Relics
-        ///Leaguestone
-        ///Life Flasks
-        ///Mace
-        ///Mana Flasks
-        ///Map Fragments
-        ///Maps
-        ///Misc Map Items
-        ///One Hand Axes
-        ///One Hand Maces
-        ///One Hand Swords
-        ///Pantheon Soul
-        ///Piece
-        ///Quest Items
-        ///Quivers
-        ///Rings
-        ///Sceptres
-        ///Shields
-        ///Stackable  [rest of string was truncated]&quot;;.
+        ///   Looks up a localized string similar to Abyss Jewel
+        ///Active Skill Gems
+        ///Amulets
+        ///Axe
+        ///Belts
+        ///Body Armours
+        ///Boots
+        ///Bows
+        ///Claws
+        ///Currency
+        ///Daggers
+        ///Delve Socketable Currency
+        ///Divination Card
+        ///Fishing Rods
+        ///Flasks
+        ///Gems
+        ///Gloves
+        ///Helmets
+        ///Hybrid Flasks
+        ///Incursion Item
+        ///Jewel
+        ///Labyrinth Item
+        ///Labyrinth Map Item
+        ///Labyrinth Trinket
+        ///Large Relics
+        ///Leaguestone
+        ///Life Flasks
+        ///Mace
+        ///Mana Flasks
+        ///Map Fragments
+        ///Maps
+        ///Misc Map Items
+        ///One Hand Axes
+        ///One Hand Maces
+        ///One Hand Swords
+        ///Pantheon Soul
+        ///Piece
+        ///Quest Items
+        ///Quivers
+        ///Rings
+        ///Sceptres
+        ///Shields
+        ///Stackable Currency
+        ///Staves
+        ///Support Skill Gems
+        ///Sword
+        ///T [rest of string was truncated]&quot;;.
         /// </summary>
         internal static string ItemClasses {
             get {
@@ -311,6 +317,71 @@ namespace Filtration.Properties {
             }
         }
         
+        /// <summary>
+        ///   Looks up a localized string similar to Abbot&apos;s
+        ///Abhorrent
+        ///Acrobat&apos;s
+        ///Adept&apos;s
+        ///Agile
+        ///Alchemist&apos;s
+        ///Alluring
+        ///Alpine
+        ///Ample
+        ///Anarchic
+        ///Anarchist&apos;s
+        ///Annealed
+        ///Antagonist&apos;s
+        ///Apprentice&apos;s
+        ///Aqua
+        ///Archmage&apos;s
+        ///Arcing
+        ///Arctic
+        ///Armadillo&apos;s
+        ///Arming
+        ///Armoured
+        ///Athlete&apos;s
+        ///Avalanching
+        ///Avenger&apos;s
+        ///Azure
+        ///Bandit&apos;s
+        ///Barbed
+        ///Battlemage&apos;s
+        ///Beating
+        ///Beautiful
+        ///Beetle&apos;s
+        ///Beryl
+        ///Betrayer&apos;s
+        ///Bipedal
+        ///Biting
+        ///Bitter
+        ///Blasting
+        ///Blazing
+        ///Blistering
+        ///Bloodthirsty
+        ///Blue
+        ///Blunt
+        ///Blurred
+        ///Boggart&apos;s
+        ///Bolting
+        ///Brawler&apos;s
+        ///Breathtaking
+        ///Brinerot
+        ///Brutal
+        ///Bubbling
+        ///Burning
+        ///Burnished
+        ///Butterfly&apos;s
+        ///Buttressed
+        ///Buzzing
+        ///Calming
+        ///Capric [rest of string was truncated]&quot;;.
+        /// </summary>
+        internal static string ItemMods {
+            get {
+                return ResourceManager.GetString("ItemMods", resourceCulture);
+            }
+        }
+        
         /// <summary>
         ///   Looks up a localized resource of type System.IO.UnmanagedMemoryStream similar to System.IO.MemoryStream.
         /// </summary>
diff --git a/Filtration/Properties/Resources.resx b/Filtration/Properties/Resources.resx
index 801da09..d07f3f7 100644
--- a/Filtration/Properties/Resources.resx
+++ b/Filtration/Properties/Resources.resx
@@ -208,4 +208,7 @@
   <data name="ItemClasses" type="System.Resources.ResXFileRef, System.Windows.Forms">
     <value>..\Resources\ItemClasses.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
   </data>
+  <data name="ItemMods" type="System.Resources.ResXFileRef, System.Windows.Forms">
+    <value>..\Resources\ItemMods.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;Windows-1252</value>
+  </data>
 </root>
\ No newline at end of file
diff --git a/Filtration/Resources/ItemMods.txt b/Filtration/Resources/ItemMods.txt
new file mode 100644
index 0000000..0a5f600
--- /dev/null
+++ b/Filtration/Resources/ItemMods.txt
@@ -0,0 +1,783 @@
+Abbot's
+Abhorrent
+Acrobat's
+Adept's
+Agile
+Alchemist's
+Alluring
+Alpine
+Ample
+Anarchic
+Anarchist's
+Annealed
+Antagonist's
+Apprentice's
+Aqua
+Archmage's
+Arcing
+Arctic
+Armadillo's
+Arming
+Armoured
+Athlete's
+Avalanching
+Avenger's
+Azure
+Bandit's
+Barbed
+Battlemage's
+Beating
+Beautiful
+Beetle's
+Beryl
+Betrayer's
+Bipedal
+Biting
+Bitter
+Blasting
+Blazing
+Blistering
+Bloodthirsty
+Blue
+Blunt
+Blurred
+Boggart's
+Bolting
+Brawler's
+Breathtaking
+Brinerot
+Brutal
+Bubbling
+Burning
+Burnished
+Butterfly's
+Buttressed
+Buzzing
+Calming
+Capricious
+Captivating
+Carapaced
+Carved
+Caster's
+Catalysed
+Catalyzing
+Caustic
+Cauterising
+Cautious
+Ceremonial
+Cerulean
+Chaining
+Chalybeous
+Champion's
+Chanter's
+Chaotic
+Charged
+Charging
+Cheetah's
+Chemist's
+Chilled
+Chilling
+Citaqualotl's
+Cleaving
+Clouded
+Cobalt
+Combatant's
+Conflagrating
+Conqueror's
+Corrupted
+Coursing
+Crab's
+Crackling
+Cremating
+Crocodile's
+Cruel
+Cryomancer's
+Cryomantic
+Crystalline
+Dancer's
+Darkened
+Dauntless
+Dazzling
+Deadly
+Deafening
+Deceiver's
+Deflecting
+Degenerative
+Demonic
+Devastating
+Dictator's
+Discharging
+Dissipating
+Djinn's
+Dragon's
+Dragonfly's
+Duelist's
+Eldritch
+Electrocuting
+Electromantic
+Elephant's
+Emanant
+Emperor's
+Empowered
+Empowering
+Encased
+Energetic
+Energising
+Enlightened
+Entombing
+Enveloped
+Ephemeral
+Esh's
+Ethereal
+Evanescent
+Evasive
+Exarch's
+Exemplary
+Experimenter's
+Exuberant
+Fawn's
+Fearless
+Feasting
+Fecund
+Fencer's
+Fencing
+Feral
+Fevered
+Fierce
+Filigree
+Flame Spinner's
+Flaming
+Flanking
+Flaring
+Flawless
+Flea's
+Fleet
+Fletcher's
+Fortified
+Freezing
+Frigid
+Frost Weaver's
+Frosted
+Frozen
+Fuelling
+Gazelle's
+Gentian
+Ghost's
+Girded
+Glaciated
+Gladiator's
+Gleaming
+Glimmering
+Glinting
+Glittering
+Glowing
+Glyphic
+Gremlin's
+Grounded
+Guatelitzi's
+Hailing
+Hale
+Halting
+Harming
+Harmonic
+Haunting
+Healthy
+Heated
+Heavy
+Hellion's
+Hero's
+Hexproof
+Hexwarded
+Hissing
+Honed
+Humming
+Hummingbird's
+Ibex's
+Icy
+Illusion's
+Illusory
+Impenetrable
+Impervious
+Impregnable
+Incandescent
+Incanter's
+Incinerating
+Incombustible
+Incorporeal
+Inculcated
+Indomitable
+Infernal
+Infixed
+Infused
+Infusing
+Ingrained
+Inspirational
+Inspired
+Inspiring
+Instilled
+Interpermeated
+Interpolated
+Ionising
+Jagged
+Jinxing
+Journeyman's
+Judging
+Lacquered
+Lamprey's
+Lava Caller's
+Layered
+Leadership
+Legend's
+Lethal
+Lich's
+Lively
+Lobstered
+Lunar
+Mage's
+Magician's
+Magmatic
+Magpie's
+Malicious
+Malignant
+Mammoth's
+Master's
+Matatl's
+Mazarine
+Mercenary's
+Merciless
+Mirage's
+Mirrored
+Molten
+Monk's
+Mosquito's
+Moth's
+Multifarious
+Mutewind
+Muttering
+Naga's
+Nautilus's
+Necromancer's
+Nightmare's
+Nihilist's
+Occultist's
+Opalescent
+Otherworldly
+Overlord's
+Overpowering
+Oyster's
+Panicked
+Paragon's
+Parched
+Parrying
+Perandus'
+Perpetual
+Phantasm's
+Phased
+Piercing
+Pirate's
+Pixie's
+Plated
+Polar
+Polished
+Prime
+Prior's
+Professor's
+Protective
+Pulsing
+Puncturing
+Punishing
+Pyroclastic
+Pyromantic
+Quintessential
+Radiating
+Ram's
+Rapturous
+Razor-sharp
+Reanimator's
+Reaver's
+Recovering
+Redblade
+Reinforced
+Remora's
+Resistant
+Resolute
+Resonant
+Resonating
+Resplendent
+Rhino's
+Ribbed
+Ripping
+Robust
+Rotund
+Runic
+Runner's
+Rupturing
+Sabotage
+Sanguine
+Sapphire
+Sapping
+Saturated
+Savage
+Scholar's
+Scintillating
+Scorching
+Scrapper's
+Screaming
+Searing
+Seething
+Seraphim's
+Serene
+Serrated
+Shade's
+Shadowy
+Shaman's
+Sharpened
+Sharpshooter's
+Shielding
+Shimmering
+Shining
+Shocking
+Shrieking
+Sinister
+Sizzling
+Skeletal
+Slicing
+Slithering
+Smiting
+Smoking
+Smouldering
+Snapping
+Snowy
+Solar
+Soldier's
+Sorcerer's
+Sparking
+Spectre's
+Spiny
+Spirited
+Splitting
+Sprinter's
+Squire's
+Stallion's
+Stalwart
+Stout
+Striking
+Strong-Willed
+Studded
+Subterranean
+Summoner's
+Sundering
+Surgeon's
+Surging
+Tacati's
+Tainted
+Technical
+Tempered
+Tempest King's
+Thaumaturgist's
+The Shaper's
+Thickened
+Thirsty
+Thorny
+Thunder Lord's
+Thundering
+Thwarting
+Titan's
+Topotante's
+Trapping
+Tul's
+Turncoat's
+Twinned
+Tyrannical
+Unassailable
+Undead
+Unfaltering
+Unleashed
+Unreal
+Unstoppable
+Unwavering
+Unworldly
+Urchin's
+Vaal
+Vampire's
+Vaporous
+Vicious
+Victor's
+Vigorous
+Vile
+Virile
+Vivacious
+Vivid
+Volcanic
+Volleying
+Wailing
+Warding
+Warlock's
+Warrior's
+Wasp's
+Weaponmaster's
+Weeping
+Whispering
+Wicked
+Winterbringer's
+Wizard's
+Wraith's
+Wright's
+Xopec's
+Xoph's
+Youthful
+Zaffre
+Zana's
+of Absorption
+of Abuse
+of Acclaim
+of Acclimatisation
+of Accuracy
+of Adamantite Skin
+of Adaptation
+of Adaption
+of Adrenaline
+of Amassment
+of Anger
+of Animation
+of Annihilation
+of Archaeology
+of Archery
+of Arcing
+of Ashes
+of Athletics
+of Authority
+of Balance
+of Bameth
+of Banishing
+of Banishment
+of Berserking
+of Blasting
+of Bleeding
+of Blinding
+of Bliss
+of Bloodlines
+of Burning
+of Calamity
+of Calm
+of Celebration
+of Champions
+of Chilling
+of Cinders
+of Citaqualotl
+of Coals
+of Collecting
+of Collision
+of Combat
+of Combusting
+of Commanders
+of Confidence
+of Conflagrating
+of Congealment
+of Consumption
+of Corundum Skin
+of Crafting
+of Craving
+of Cunning
+of Curing
+of Dampening
+of Darting
+of Dazing
+of Deadliness
+of Delaying
+of Demolishing
+of Desecration
+of Destruction
+of Dexterity
+of Disaster
+of Discharge
+of Dishonour
+of Distraction
+of Dousing
+of Drought
+of Ease
+of Efficiency
+of Elation
+of Electricity
+of Elemental Weakness
+of Embers
+of Enchanting
+of Endurance
+of Enfeeblement
+of Entropy
+of Ephij
+of Euphoria
+of Eviction
+of Excavation
+of Excitement
+of Exile
+of Expertise
+of Exposure
+of Expulsion
+of Extinguishing
+of Exuberance
+of Fame
+of Fending
+of Ferocity
+of Finesse
+of Flames
+of Flight
+of Floe
+of Focus
+of Fog
+of Fortitude
+of Fracturing
+of Freezing
+of Frenzy
+of Fury
+of Gathering
+of Giants
+of Glaciation
+of Gluttony
+of Grandmastery
+of Grounding
+of Guarding
+of Guatelitzi
+of Haast
+of Haemophilia
+of Harm
+of Havoc
+of Haze
+of Heat
+of Hemomancy
+of Hindering
+of Hoarding
+of Hordes
+of Ice
+of Immolation
+of Impact
+of Impotence
+of Incision
+of Infamy
+of Instinct
+of Insulating
+of Insulation
+of Intelligence
+of Intercepting
+of Ire
+of Iron Skin
+of Joy
+of Legerdemain
+of Light
+of Lightning
+of Lioneye
+of Longevity
+of Malevolence
+of Malice
+of Maneuvering
+of Marshalling
+of Mastery
+of Matatl
+of Menace
+of Mending
+of Miring
+of Momentum
+of Mysticism
+of Needling
+of Nimbleness
+of Nirvana
+of Nourishment
+of Numbing
+of Onslaught
+of Opportunity
+of Orchestration
+of Order
+of Osmosis
+of Overflowing
+of Penetrating
+of Phasing
+of Piercing
+of Plunder
+of Poisoning
+of Potency
+of Power
+of Praxis
+of Precision
+of Preparation
+of Prestidigitation
+of Propulsion
+of Puhuarte
+of Radiance
+of Rage
+of Raiding
+of Rallying
+of Readiness
+of Recovery
+of Refilling
+of Reflexes
+of Regrowth
+of Rejuvenation
+of Rending
+of Renown
+of Resilience
+of Resistance
+of Restoration
+of Retaliation
+of Righteousness
+of Rime
+of Ruin
+of Runes
+of Rupturing
+of Rust
+of Savouring
+of Shaping
+of Shelter
+of Shining
+of Shocking
+of Sin
+of Sipping
+of Skill
+of Skirmishing
+of Slamming
+of Sleet
+of Smothering
+of Snow
+of Soaring
+of Sortilege
+of Sparks
+of Spellcraft
+of Spirit
+of Staggering
+of Stasis
+of Static
+of Staunching
+of Steadiness
+of Steel Skin
+of Stifling
+of Stinging
+of Stone Skin
+of Strength
+of Stunning
+of Success
+of Tacati
+of Talent
+of Taunting
+of Temporal Chains
+of Thick Skin
+of Tolerance
+of Toughness
+of Training
+of Triumph
+of Tzteosh
+of Unholy Might
+of Unmaking
+of Unwavering
+of Vampirism
+of Variegation
+of Venom
+of Vibrance
+of Victory
+of Vivaciousness
+of Voltage
+of Vulnerability
+of Walling
+of Warding
+of Warming
+of Weaponcraft
+of Weight
+of Wounding
+of Zeal
+of the Apocalypse
+of the Apt
+of the Assassin
+of the Augur
+of the Bear
+of the Beast
+of the Blur
+of the Boxer
+of the Brawler
+of the Brute
+of the Cloud
+of the Clouds
+of the Combatant
+of the Comet
+of the Crystal
+of the Deadeye
+of the Dragon
+of the Drake
+of the Elder
+of the Elements
+of the Falcon
+of the Fox
+of the Furnace
+of the Galaxy
+of the Gale
+of the Genius
+of the Gladiator
+of the Gods
+of the Godslayer
+of the Goliath
+of the Gorilla
+of the Guardian
+of the Hearth
+of the Heavens
+of the Hydra
+of the Ice
+of the Inferno
+of the Infinite
+of the Inquisitor
+of the Inuit
+of the Jaguar
+of the Kaleidoscope
+of the Kiln
+of the Leopard
+of the Leviathan
+of the Lightning
+of the Lion
+of the Lizard
+of the Lost
+of the Lynx
+of the Maelstrom
+of the Magma
+of the Marksman
+of the Meteor
+of the Mongoose
+of the Multiverse
+of the Newt
+of the Panther
+of the Penguin
+of the Phantom
+of the Philosopher
+of the Phoenix
+of the Polar Bear
+of the Polymath
+of the Prism
+of the Prodigy
+of the Pugilist
+of the Pupil
+of the Raider
+of the Rainbow
+of the Ranger
+of the Sage
+of the Salamander
+of the Savant
+of the Seal
+of the Sky
+of the Slayer
+of the Sniper
+of the Span
+of the Squall
+of the Starfish
+of the Storm
+of the Student
+of the Tempest
+of the Thunderhead
+of the Titan
+of the Troll
+of the Underground
+of the Universe
+of the Virtuoso
+of the Volcano
+of the Wall
+of the Walrus
+of the Whelpling
+of the Wind
+of the Worthy
+of the Wrestler
+of the Yeti
+of the Zephyr
\ No newline at end of file
diff --git a/Filtration/Services/StaticDataService.cs b/Filtration/Services/StaticDataService.cs
index 8beb406..356e331 100644
--- a/Filtration/Services/StaticDataService.cs
+++ b/Filtration/Services/StaticDataService.cs
@@ -10,6 +10,7 @@ namespace Filtration.Services
     {
         IEnumerable<string> ItemBaseTypes { get; }
         IEnumerable<string> ItemClasses { get; }
+        IEnumerable<string> ItemMods { get; }
     }
 
     internal class StaticDataService : IStaticDataService
@@ -23,10 +24,13 @@ namespace Filtration.Services
 
         public IEnumerable<string> ItemClasses { get; private set; }
 
+        public IEnumerable<string> ItemMods { get; private set; }
+
         private void PopulateStaticData()
         {
             ItemBaseTypes = new LineReader(() => new StringReader(Resources.ItemBaseTypes)).ToList();
             ItemClasses = new LineReader(() => new StringReader(Resources.ItemClasses)).ToList();
+            ItemMods = new LineReader(() => new StringReader(Resources.ItemMods)).ToList();
         }
     }
 }
diff --git a/Filtration/UserControls/BlockItemControl.xaml b/Filtration/UserControls/BlockItemControl.xaml
index e9c0ebf..6b04616 100644
--- a/Filtration/UserControls/BlockItemControl.xaml
+++ b/Filtration/UserControls/BlockItemControl.xaml
@@ -78,7 +78,7 @@
 
                     <!-- Explicit Mods Template -->
                     <DataTemplate DataType="{x:Type blockItemTypes:HasExplicitModBlockItem}">
-                        <userControls:EditableListBoxControl Margin="5,5,5,5" ItemsSource="{Binding Items}" />
+                        <userControls:EditableListBoxControl Margin="5,5,5,5" ItemsSource="{Binding Items}" AutoCompleteItemsSource="{Binding ElementName=TopLevelGrid, Path=DataContext.AutocompleteItemMods}" />
                     </DataTemplate>
 
                     <!-- Socket Groups Template -->
diff --git a/Filtration/ViewModels/ItemFilterBlockViewModel.cs b/Filtration/ViewModels/ItemFilterBlockViewModel.cs
index 8d87c52..211f6d1 100644
--- a/Filtration/ViewModels/ItemFilterBlockViewModel.cs
+++ b/Filtration/ViewModels/ItemFilterBlockViewModel.cs
@@ -162,6 +162,8 @@ namespace Filtration.ViewModels
 
         public IEnumerable<string> AutoCompleteItemBaseTypes => _staticDataService.ItemBaseTypes;
 
+        public IEnumerable<string> AutocompleteItemMods => _staticDataService.ItemMods;
+
         public List<Type> BlockItemTypesAvailable => new List<Type>
         {
             typeof (ItemLevelBlockItem),
@@ -352,7 +354,7 @@ namespace Filtration.ViewModels
             var replaceColorsWindow = new ReplaceColorsWindow { DataContext = _replaceColorsViewModel };
             replaceColorsWindow.ShowDialog();
         }
-        
+
         private bool AddBlockItemAllowed(Type type)
         {
             var blockItem = (IItemFilterBlockItem)Activator.CreateInstance(type);
@@ -636,7 +638,7 @@ namespace Filtration.ViewModels
 
             BlockGroups = new ObservableCollection<ItemFilterBlockGroup>(groupList);
             BlockGroupSuggestions = new ObservableCollection<string>();
-            
+
             foreach(var child in topGroup.ChildGroups)
             {
                 if(!child.IsLeafNode)
@@ -644,7 +646,7 @@ namespace Filtration.ViewModels
                     BlockGroupSuggestions.Add(child.GroupName);
                 }
             }
-            
+
             RaisePropertyChanged(nameof(BlockGroups));
             RaisePropertyChanged(nameof(BlockGroupSuggestions));
         }