diff --git a/Spigot-API-Patches/Expose-Arrow-getItemStack.patch b/Spigot-API-Patches/Expose-Arrow-getItemStack.patch
new file mode 100644
index 0000000000..084f224f33
--- /dev/null
+++ b/Spigot-API-Patches/Expose-Arrow-getItemStack.patch
@@ -0,0 +1,25 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Nesaak <52047222+Nesaak@users.noreply.github.com>
+Date: Fri, 22 May 2020 13:35:21 -0400
+Subject: [PATCH] Expose Arrow getItemStack
+
+
+diff --git a/src/main/java/org/bukkit/entity/AbstractArrow.java b/src/main/java/org/bukkit/entity/AbstractArrow.java
+index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
+--- a/src/main/java/org/bukkit/entity/AbstractArrow.java
++++ b/src/main/java/org/bukkit/entity/AbstractArrow.java
+@@ -0,0 +0,0 @@ public interface AbstractArrow extends Projectile {
+     }
+ 
+     // Paper start
++    /**
++     * Gets the ItemStack for this arrow.
++     *
++     * @return The ItemStack, as if a player picked up the arrow
++     */
++    @NotNull
++    org.bukkit.inventory.ItemStack getItemStack();
++
+     /**
+      * Gets the {@link PickupRule} for this arrow.
+      *
diff --git a/Spigot-Server-Patches/Expose-Arrow-getItemStack.patch b/Spigot-Server-Patches/Expose-Arrow-getItemStack.patch
new file mode 100644
index 0000000000..d08a9ac7a2
--- /dev/null
+++ b/Spigot-Server-Patches/Expose-Arrow-getItemStack.patch
@@ -0,0 +1,37 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Nesaak <52047222+Nesaak@users.noreply.github.com>
+Date: Sat, 23 May 2020 10:31:11 -0400
+Subject: [PATCH] Expose Arrow getItemStack
+
+
+diff --git a/src/main/java/net/minecraft/server/EntityArrow.java b/src/main/java/net/minecraft/server/EntityArrow.java
+index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
+--- a/src/main/java/net/minecraft/server/EntityArrow.java
++++ b/src/main/java/net/minecraft/server/EntityArrow.java
+@@ -0,0 +0,0 @@ public abstract class EntityArrow extends Entity implements IProjectile {
+         }
+     }
+ 
++    public ItemStack getOriginalItemStack() { return getItemStack(); }  // Paper - OBFHelper
++
+     protected abstract ItemStack getItemStack();
+ 
+     @Override
+diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftArrow.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftArrow.java
+index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
+--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftArrow.java
++++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftArrow.java
+@@ -0,0 +0,0 @@ public class CraftArrow extends AbstractProjectile implements AbstractArrow {
+         getHandle().fromPlayer = EntityArrow.PickupStatus.a(status.ordinal());
+     }
+ 
++    // Paper start
++    @Override
++    public org.bukkit.craftbukkit.inventory.CraftItemStack getItemStack() {
++        return org.bukkit.craftbukkit.inventory.CraftItemStack.asCraftMirror(getHandle().getOriginalItemStack());
++    }
++    //Paper end
++
+     @Override
+     public void setTicksLived(int value) {
+         super.setTicksLived(value);