diff --git a/.gitattributes b/.gitattributes
index 36296ef..f0aca20 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -1,14 +1,15 @@
-/.gitattributes export-ignore
-/.gitignore export-ignore
-/.github export-ignore
-/.phive export-ignore
-/.php-cs-fixer.dist.php export-ignore
-/.psalm export-ignore
-/build export-ignore
-/build.xml export-ignore
-/phpunit.xml export-ignore
-/tests export-ignore
-/tools export-ignore
-/tools/* binary
+/.gitattributes export-ignore
+/.gitignore export-ignore
+/.github export-ignore
+/.phive export-ignore
+/.php-cs-fixer.dist.php export-ignore
+/.psalm export-ignore
+/build export-ignore
+/build.xml export-ignore
+infection.json5.dist export-ignore
+/phpunit.xml export-ignore
+/tests export-ignore
+/tools export-ignore
+/tools/* binary
*.php diff=php
diff --git a/.phive/phars.xml b/.phive/phars.xml
index dd0c9e5..aa72059 100644
--- a/.phive/phars.xml
+++ b/.phive/phars.xml
@@ -3,4 +3,5 @@
+
diff --git a/infection.json5.dist b/infection.json5.dist
new file mode 100644
index 0000000..cb2894c
--- /dev/null
+++ b/infection.json5.dist
@@ -0,0 +1,13 @@
+{
+ "$schema": "https://raw.githubusercontent.com/infection/infection/0.28.1/resources/schema.json",
+ "source": {
+ "directories": [
+ "src"
+ ]
+ },
+ "mutators": {
+ "@default": true
+ },
+ "minMsi": 100,
+ "minCoveredMsi": 100
+}
diff --git a/tools/infection b/tools/infection
new file mode 100755
index 0000000..bb7779c
Binary files /dev/null and b/tools/infection differ