diff --git a/SiraUtil Examples.sln b/SiraUtil Examples.sln
new file mode 100644
index 0000000..ff40bfa
--- /dev/null
+++ b/SiraUtil Examples.sln
@@ -0,0 +1,25 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.0.31815.197
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FailOnSaberClash", "[1] FailOnSaberClash\[1] FailOnSaberClash.csproj", "{25F997F4-845A-4716-9E53-584F630BD1D0}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {25F997F4-845A-4716-9E53-584F630BD1D0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {25F997F4-845A-4716-9E53-584F630BD1D0}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {25F997F4-845A-4716-9E53-584F630BD1D0}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {25F997F4-845A-4716-9E53-584F630BD1D0}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {B60B8918-8D73-4B77-AE5A-FF5A041456A9}
+ EndGlobalSection
+EndGlobal
diff --git a/[1] FailOnSaberClash/Directory.Build.props b/[1] FailOnSaberClash/Directory.Build.props
new file mode 100644
index 0000000..02c5dc1
--- /dev/null
+++ b/[1] FailOnSaberClash/Directory.Build.props
@@ -0,0 +1,14 @@
+
+
+
+
+ true
+ true
+ true
+
+
+ false
+ true
+ true
+
+
\ No newline at end of file
diff --git a/[1] FailOnSaberClash/Directory.Build.targets b/[1] FailOnSaberClash/Directory.Build.targets
new file mode 100644
index 0000000..4b3ce8e
--- /dev/null
+++ b/[1] FailOnSaberClash/Directory.Build.targets
@@ -0,0 +1,102 @@
+
+
+
+
+ 2.0
+
+ false
+
+ $(OutputPath)$(AssemblyName)
+
+ $(OutputPath)Final
+ True
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $(BasePluginVersion)
+ $(BasePluginVersion)
+ $(BasePluginVersion)
+
+
+
+
+
+
+
+
+ $(AssemblyName)_[
+ $(ArtifactName)v$(PluginVersion)
+ $(ArtifactName)-g$(GameVersion)
+ $(ArtifactName)-$(CommitHash)
+ $(ArtifactName)]
+
+
+
+
+
+
+ $(AssemblyName)
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $(AssemblyName)
+ $(OutDir)zip\
+
+
+
+
+
+
+
+
+
+
+
+
+ $(BeatSaberDir)\Plugins
+ True
+ Unable to copy assembly to game folder, did you set 'BeatSaberDir' correctly in your 'csproj.user' file? Plugins folder doesn't exist: '$(PluginDir)'.
+
+ Unable to copy to Plugins folder, '$(BeatSaberDir)' does not appear to be a Beat Saber game install.
+
+ Unable to copy to Plugins folder, 'BeatSaberDir' has not been set in your 'csproj.user' file.
+ False
+
+
+
+
+
+
+
+ $(BeatSaberDir)\IPA\Pending\Plugins
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/[1] FailOnSaberClash/Installers/FailOnSaberClashCoreInstaller.cs b/[1] FailOnSaberClash/Installers/FailOnSaberClashCoreInstaller.cs
new file mode 100644
index 0000000..7cad730
--- /dev/null
+++ b/[1] FailOnSaberClash/Installers/FailOnSaberClashCoreInstaller.cs
@@ -0,0 +1,12 @@
+using Zenject;
+
+namespace FailOnSaberClash.Installers
+{
+ internal class FailOnSaberClashCoreInstaller : Installer
+ {
+ public override void InstallBindings()
+ {
+
+ }
+ }
+}
\ No newline at end of file
diff --git a/[1] FailOnSaberClash/Plugin.cs b/[1] FailOnSaberClash/Plugin.cs
new file mode 100644
index 0000000..4dd59f1
--- /dev/null
+++ b/[1] FailOnSaberClash/Plugin.cs
@@ -0,0 +1,18 @@
+using FailOnSaberClash.Installers;
+using IPA;
+using SiraUtil.Zenject;
+using IPALogger = IPA.Logging.Logger;
+
+namespace FailOnSaberClash
+{
+ [Plugin(RuntimeOptions.DynamicInit)]
+ public class Plugin
+ {
+ [Init]
+ public Plugin(IPALogger logger, Zenjector zenjector)
+ {
+ zenjector.UseLogger(logger);
+ zenjector.Install(Location.App);
+ }
+ }
+}
\ No newline at end of file
diff --git a/[1] FailOnSaberClash/[1] FailOnSaberClash.csproj b/[1] FailOnSaberClash/[1] FailOnSaberClash.csproj
new file mode 100644
index 0000000..3873526
--- /dev/null
+++ b/[1] FailOnSaberClash/[1] FailOnSaberClash.csproj
@@ -0,0 +1,155 @@
+
+
+
+ netstandard2.0
+ Library
+ 8
+ disable
+ true
+ ..\Refs
+ $(LocalRefsDir)
+ $(MSBuildProjectDirectory)\
+ Copyright © SIRA 2021
+ FailOnSaberClash
+ FailOnSaberClash
+ false
+
+
+
+ false
+ bin\Debug\
+ full
+
+
+
+ true
+ bin\Release\
+ pdbonly
+
+
+
+ True
+
+
+
+ True
+ True
+
+
+
+
+ $(BeatSaberDir)\Beat Saber_Data\Managed\Core.dll
+ False
+
+
+ $(BeatSaberDir)\Beat Saber_Data\Managed\GameplayCore.dll
+ False
+
+
+ $(BeatSaberDir)\Beat Saber_Data\Managed\HMRendering.dll
+ False
+
+
+ $(BeatSaberDir)\Beat Saber_Data\Managed\MediaLoader.dll
+ False
+
+
+ $(BeatSaberDir)\Beat Saber_Data\Managed\Rendering.dll
+ False
+
+
+ $(BeatSaberDir)\Libs\Hive.Versioning.dll
+ False
+
+
+ $(BeatSaberDir)\Libs\Newtonsoft.Json.dll
+ False
+
+
+ $(BeatSaberDir)\Plugins\SiraUtil.dll
+ False
+
+
+ $(BeatSaberDir)\Beat Saber_Data\Managed\UnityEngine.dll
+ False
+
+
+ $(BeatSaberDir)\Beat Saber_Data\Managed\Unity.TextMeshPro.dll
+ False
+
+
+ $(BeatSaberDir)\Beat Saber_Data\Managed\UnityEngine.AudioModule.dll
+ False
+
+
+ $(BeatSaberDir)\Beat Saber_Data\Managed\UnityEngine.UI.dll
+ False
+
+
+ $(BeatSaberDir)\Beat Saber_Data\Managed\UnityEngine.CoreModule.dll
+ False
+
+
+ $(BeatSaberDir)\Beat Saber_Data\Managed\UnityEngine.UIElementsModule.dll
+ False
+
+
+ $(BeatSaberDir)\Beat Saber_Data\Managed\UnityEngine.UIModule.dll
+ False
+
+
+ $(BeatSaberDir)\Beat Saber_Data\Managed\UnityEngine.VRModule.dll
+ False
+
+
+ $(BeatSaberDir)\Beat Saber_Data\Managed\Main.dll
+ False
+
+
+ $(BeatSaberDir)\Beat Saber_Data\Managed\HMLib.dll
+ False
+
+
+ $(BeatSaberDir)\Beat Saber_Data\Managed\HMUI.dll
+ False
+
+
+ $(BeatSaberDir)\Beat Saber_Data\Managed\IPA.Loader.dll
+ False
+
+
+ $(BeatSaberDir)\Beat Saber_Data\Managed\VRUI.dll
+ False
+
+
+ $(BeatSaberDir)\Beat Saber_Data\Managed\Zenject.dll
+ False
+
+
+ $(BeatSaberDir)\Beat Saber_Data\Managed\Zenject-usage.dll
+ False
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ all
+ runtime; build; native; contentfiles; analyzers; buildtransitive
+
+
+
+
\ No newline at end of file
diff --git a/[1] FailOnSaberClash/manifest.json b/[1] FailOnSaberClash/manifest.json
new file mode 100644
index 0000000..3903a3b
--- /dev/null
+++ b/[1] FailOnSaberClash/manifest.json
@@ -0,0 +1,12 @@
+{
+ "$schema": "https://raw.githubusercontent.com/bsmg/BSIPA-MetadataFileSchema/master/Schema.json",
+ "id": "FailOnSaberClash",
+ "name": "FailOnSaberClash",
+ "author": "auros",
+ "version": "3.0.0",
+ "description": "",
+ "gameVersion": "1.18.1",
+ "dependsOn": {
+ "BSIPA": "^4.2.0"
+ }
+}
\ No newline at end of file