diff --git a/Spigot-API-Patches/Ability-to-apply-mending-to-XP-API.patch b/Spigot-API-Patches/Ability-to-apply-mending-to-XP-API.patch
index 9cd52660d..9af513a49 100644
--- a/Spigot-API-Patches/Ability-to-apply-mending-to-XP-API.patch
+++ b/Spigot-API-Patches/Ability-to-apply-mending-to-XP-API.patch
@@ -10,7 +10,7 @@ of giving the player experience points.
Both an API To standalone mend, and apply mending logic to .giveExp has been added.
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
-index ce4ea22c..d069a84c 100644
+index 0a630843..2bd1af78 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -0,0 +0,0 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
diff --git a/Spigot-API-Patches/Add-Ban-Methods-to-Player-Objects.patch b/Spigot-API-Patches/Add-Ban-Methods-to-Player-Objects.patch
index 4b196899e..07c8f293c 100644
--- a/Spigot-API-Patches/Add-Ban-Methods-to-Player-Objects.patch
+++ b/Spigot-API-Patches/Add-Ban-Methods-to-Player-Objects.patch
@@ -74,18 +74,14 @@ index ffc8ad37..222a9a7b 100644
/**
* Checks if this player is whitelisted or not
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
-index f89b6c6b..7ae67786 100644
+index f9a3a3e5..75bbbefd 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
-@@ -0,0 +0,0 @@
- package org.bukkit.entity;
-
+@@ -0,0 +0,0 @@ package org.bukkit.entity;
import java.net.InetSocketAddress;
+ import com.destroystokyo.paper.Title; // Paper
+ import com.destroystokyo.paper.profile.PlayerProfile; // Paper
+import java.util.Date; // Paper
-
- import com.destroystokyo.paper.Title;
- import com.destroystokyo.paper.profile.PlayerProfile;
- import org.bukkit.Achievement;
+import org.bukkit.BanEntry; // Paper
+import org.bukkit.BanList; // Paper
+import org.bukkit.Bukkit; // Paper
diff --git a/Spigot-API-Patches/Add-String-based-Action-Bar-API.patch b/Spigot-API-Patches/Add-String-based-Action-Bar-API.patch
index 2c2712d4b..b6edec1a0 100644
--- a/Spigot-API-Patches/Add-String-based-Action-Bar-API.patch
+++ b/Spigot-API-Patches/Add-String-based-Action-Bar-API.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Add String based Action Bar API
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
-index aaa74125..f41545c5 100644
+index d1290ab3..63e5197d 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -0,0 +0,0 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
diff --git a/Spigot-API-Patches/Add-an-API-for-CanPlaceOn-and-CanDestroy-NBT-values.patch b/Spigot-API-Patches/Add-an-API-for-CanPlaceOn-and-CanDestroy-NBT-values.patch
index 75ac5b917..b99971387 100644
--- a/Spigot-API-Patches/Add-an-API-for-CanPlaceOn-and-CanDestroy-NBT-values.patch
+++ b/Spigot-API-Patches/Add-an-API-for-CanPlaceOn-and-CanDestroy-NBT-values.patch
@@ -6,7 +6,7 @@ Subject: [PATCH] Add an API for CanPlaceOn and CanDestroy NBT values
diff --git a/src/main/java/com/destroystokyo/paper/Namespaced.java b/src/main/java/com/destroystokyo/paper/Namespaced.java
new file mode 100644
-index 000000000..cd1a34b82
+index 00000000..cd1a34b8
--- /dev/null
+++ b/src/main/java/com/destroystokyo/paper/Namespaced.java
@@ -0,0 +0,0 @@
@@ -52,7 +52,7 @@ index 000000000..cd1a34b82
+}
diff --git a/src/main/java/com/destroystokyo/paper/NamespacedTag.java b/src/main/java/com/destroystokyo/paper/NamespacedTag.java
new file mode 100644
-index 000000000..28f3fda95
+index 00000000..28f3fda9
--- /dev/null
+++ b/src/main/java/com/destroystokyo/paper/NamespacedTag.java
@@ -0,0 +0,0 @@
@@ -199,7 +199,7 @@ index 000000000..28f3fda95
+ }
+}
diff --git a/src/main/java/org/bukkit/NamespacedKey.java b/src/main/java/org/bukkit/NamespacedKey.java
-index 22eca2a18..620a962df 100644
+index 22eca2a1..620a962d 100644
--- a/src/main/java/org/bukkit/NamespacedKey.java
+++ b/src/main/java/org/bukkit/NamespacedKey.java
@@ -0,0 +0,0 @@ import org.jetbrains.annotations.NotNull;
@@ -226,13 +226,14 @@ index 22eca2a18..620a962df 100644
return key;
}
diff --git a/src/main/java/org/bukkit/inventory/meta/ItemMeta.java b/src/main/java/org/bukkit/inventory/meta/ItemMeta.java
-index 4e8c7a8ac..595df539b 100644
+index 1df31be7..b1fa15a1 100644
--- a/src/main/java/org/bukkit/inventory/meta/ItemMeta.java
+++ b/src/main/java/org/bukkit/inventory/meta/ItemMeta.java
@@ -0,0 +0,0 @@ public interface ItemMeta extends Cloneable, ConfigurationSerializable, Persiste
+ @SuppressWarnings("javadoc")
@NotNull
- Spigot spigot();
- // Spigot end
+ ItemMeta clone();
++
+ // Paper start - Add an API for CanPlaceOn and CanDestroy NBT values
+ /**
+ * Gets set of materials what given item can destroy in {@link org.bukkit.GameMode#ADVENTURE}
diff --git a/Spigot-API-Patches/Add-player-view-distance-API.patch b/Spigot-API-Patches/Add-player-view-distance-API.patch
index 5771770a7..094df2e42 100644
--- a/Spigot-API-Patches/Add-player-view-distance-API.patch
+++ b/Spigot-API-Patches/Add-player-view-distance-API.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Add player view distance API
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
-index b0ead72d..abd119dd 100644
+index 46912889..0fb36ebd 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -0,0 +0,0 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
diff --git a/Spigot-API-Patches/Allow-plugins-to-use-SLF4J-for-logging.patch b/Spigot-API-Patches/Allow-plugins-to-use-SLF4J-for-logging.patch
index 2355dd46a..3d76881a7 100644
--- a/Spigot-API-Patches/Allow-plugins-to-use-SLF4J-for-logging.patch
+++ b/Spigot-API-Patches/Allow-plugins-to-use-SLF4J-for-logging.patch
@@ -14,11 +14,11 @@ it without having to shade it in the plugin and going through
several layers of logging abstraction.
diff --git a/pom.xml b/pom.xml
-index 709b7a222..5088c3315 100644
+index a6567413..1179fd55 100644
--- a/pom.xml
+++ b/pom.xml
@@ -0,0 +0,0 @@
- 17.0.0
+ 18.0.0
provided
+
@@ -32,7 +32,7 @@ index 709b7a222..5088c3315 100644
junit
diff --git a/src/main/java/org/bukkit/plugin/Plugin.java b/src/main/java/org/bukkit/plugin/Plugin.java
-index febfec6ef..79890c68f 100644
+index febfec6e..79890c68 100644
--- a/src/main/java/org/bukkit/plugin/Plugin.java
+++ b/src/main/java/org/bukkit/plugin/Plugin.java
@@ -0,0 +0,0 @@ public interface Plugin extends TabExecutor {
diff --git a/Spigot-API-Patches/Complete-resource-pack-API.patch b/Spigot-API-Patches/Complete-resource-pack-API.patch
index 4fe38e6ee..9a8fac208 100644
--- a/Spigot-API-Patches/Complete-resource-pack-API.patch
+++ b/Spigot-API-Patches/Complete-resource-pack-API.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Complete resource pack API
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
-index 4d6b06da..aaa74125 100644
+index 81677fcd..d1290ab3 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -0,0 +0,0 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
diff --git a/Spigot-API-Patches/Entity-Origin-API.patch b/Spigot-API-Patches/Entity-Origin-API.patch
index 3e0418c40..519d6313b 100644
--- a/Spigot-API-Patches/Entity-Origin-API.patch
+++ b/Spigot-API-Patches/Entity-Origin-API.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Entity Origin API
diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java
-index 85fb83c1..5ed0be71 100644
+index d708d62b..8cfcc3a5 100644
--- a/src/main/java/org/bukkit/entity/Entity.java
+++ b/src/main/java/org/bukkit/entity/Entity.java
@@ -0,0 +0,0 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent
diff --git a/Spigot-API-Patches/Entity-fromMobSpawner.patch b/Spigot-API-Patches/Entity-fromMobSpawner.patch
index ed737178c..c129428c5 100644
--- a/Spigot-API-Patches/Entity-fromMobSpawner.patch
+++ b/Spigot-API-Patches/Entity-fromMobSpawner.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Entity#fromMobSpawner()
diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java
-index 5ed0be71..d088490f 100644
+index 8cfcc3a5..bd8507f6 100644
--- a/src/main/java/org/bukkit/entity/Entity.java
+++ b/src/main/java/org/bukkit/entity/Entity.java
@@ -0,0 +0,0 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent
diff --git a/Spigot-API-Patches/Entity-getChunk-API.patch b/Spigot-API-Patches/Entity-getChunk-API.patch
index 79891ce42..f6c162ece 100644
--- a/Spigot-API-Patches/Entity-getChunk-API.patch
+++ b/Spigot-API-Patches/Entity-getChunk-API.patch
@@ -6,7 +6,7 @@ Subject: [PATCH] Entity#getChunk API
Get the chunk the entity is currently registered to
diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java
-index d088490f..1171b103 100644
+index bd8507f6..79b94800 100644
--- a/src/main/java/org/bukkit/entity/Entity.java
+++ b/src/main/java/org/bukkit/entity/Entity.java
@@ -0,0 +0,0 @@ package org.bukkit.entity;
diff --git a/Spigot-API-Patches/Entity-getEntitySpawnReason.patch b/Spigot-API-Patches/Entity-getEntitySpawnReason.patch
index 3eb3a2457..99d2f0b48 100644
--- a/Spigot-API-Patches/Entity-getEntitySpawnReason.patch
+++ b/Spigot-API-Patches/Entity-getEntitySpawnReason.patch
@@ -10,7 +10,7 @@ persistenting Living Entity, SPAWNER for spawners,
or DEFAULT since data was not stored.
diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java
-index da7b35f0..ac28ba01 100644
+index 83e02aea..60dbfab0 100644
--- a/src/main/java/org/bukkit/entity/Entity.java
+++ b/src/main/java/org/bukkit/entity/Entity.java
@@ -0,0 +0,0 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent
diff --git a/Spigot-API-Patches/Expand-World.spawnParticle-API-and-add-Builder.patch b/Spigot-API-Patches/Expand-World.spawnParticle-API-and-add-Builder.patch
index e9031f149..d690ad7f7 100644
--- a/Spigot-API-Patches/Expand-World.spawnParticle-API-and-add-Builder.patch
+++ b/Spigot-API-Patches/Expand-World.spawnParticle-API-and-add-Builder.patch
@@ -10,7 +10,7 @@ This adds a new Builder API which is much friendlier to use.
diff --git a/src/main/java/com/destroystokyo/paper/ParticleBuilder.java b/src/main/java/com/destroystokyo/paper/ParticleBuilder.java
new file mode 100644
-index 000000000..06f1602f5
+index 00000000..06f1602f
--- /dev/null
+++ b/src/main/java/com/destroystokyo/paper/ParticleBuilder.java
@@ -0,0 +0,0 @@
@@ -493,7 +493,7 @@ index 000000000..06f1602f5
+ }
+}
diff --git a/src/main/java/org/bukkit/Particle.java b/src/main/java/org/bukkit/Particle.java
-index 68cb74420..69aae30a3 100644
+index 49467ac7..d2ceb07c 100644
--- a/src/main/java/org/bukkit/Particle.java
+++ b/src/main/java/org/bukkit/Particle.java
@@ -0,0 +0,0 @@ public enum Particle {
@@ -515,7 +515,7 @@ index 68cb74420..69aae30a3 100644
* Options which can be applied to redstone dust particles - a particle
* color and size.
diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java
-index c0158a369..fee0f5211 100644
+index c0158a36..fee0f521 100644
--- a/src/main/java/org/bukkit/World.java
+++ b/src/main/java/org/bukkit/World.java
@@ -0,0 +0,0 @@ public interface World extends PluginMessageRecipient, Metadatable {
diff --git a/Spigot-API-Patches/Expose-attack-cooldown-methods-for-Player.patch b/Spigot-API-Patches/Expose-attack-cooldown-methods-for-Player.patch
index 61acb2b6b..610fdadc7 100644
--- a/Spigot-API-Patches/Expose-attack-cooldown-methods-for-Player.patch
+++ b/Spigot-API-Patches/Expose-attack-cooldown-methods-for-Player.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Expose attack cooldown methods for Player
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
-index 7ae67786..8d8d8957 100644
+index 75bbbefd..e37c94e4 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -0,0 +0,0 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
diff --git a/Spigot-API-Patches/Expose-client-protocol-version-and-virtual-host.patch b/Spigot-API-Patches/Expose-client-protocol-version-and-virtual-host.patch
index 83f7809aa..f8c6e1c8c 100644
--- a/Spigot-API-Patches/Expose-client-protocol-version-and-virtual-host.patch
+++ b/Spigot-API-Patches/Expose-client-protocol-version-and-virtual-host.patch
@@ -57,7 +57,7 @@ index 00000000..7b2af1bd
+
+}
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
-index 576ad2c6..ce4ea22c 100644
+index 881ccce5..0a630843 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -0,0 +0,0 @@ import org.jetbrains.annotations.Nullable;
diff --git a/Spigot-API-Patches/Fix-upstream-javadoc-warnings-and-errors.patch b/Spigot-API-Patches/Fix-upstream-javadoc-warnings-and-errors.patch
index dd669ae9a..376b84a29 100644
--- a/Spigot-API-Patches/Fix-upstream-javadoc-warnings-and-errors.patch
+++ b/Spigot-API-Patches/Fix-upstream-javadoc-warnings-and-errors.patch
@@ -6,7 +6,7 @@ Subject: [PATCH] Fix upstream javadoc warnings and errors
Upstream still refuses to use Java 8 with the API so they are likely unaware these are even issues.
diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java
-index 767cdf0aa..3858b0576 100644
+index 767cdf0a..3858b057 100644
--- a/src/main/java/org/bukkit/World.java
+++ b/src/main/java/org/bukkit/World.java
@@ -0,0 +0,0 @@ public interface World extends PluginMessageRecipient, Metadatable {
@@ -74,7 +74,7 @@ index 767cdf0aa..3858b0576 100644
public void spawnParticle(@NotNull Particle particle, double x, double y, double z, int count, double offsetX, double offsetY, double offsetZ, double extra, @Nullable T data, boolean force);
diff --git a/src/main/java/org/bukkit/entity/AreaEffectCloud.java b/src/main/java/org/bukkit/entity/AreaEffectCloud.java
-index c2096b534..bca9d3659 100644
+index c2096b53..bca9d365 100644
--- a/src/main/java/org/bukkit/entity/AreaEffectCloud.java
+++ b/src/main/java/org/bukkit/entity/AreaEffectCloud.java
@@ -0,0 +0,0 @@ public interface AreaEffectCloud extends Entity {
@@ -86,7 +86,7 @@ index c2096b534..bca9d3659 100644
void setParticle(@NotNull Particle particle, @Nullable T data);
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
-index f41545c52..576ad2c68 100644
+index 63e5197d..881ccce5 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -0,0 +0,0 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
@@ -179,7 +179,7 @@ index f41545c52..576ad2c68 100644
public void spawnParticle(@NotNull Particle particle, double x, double y, double z, int count, double offsetX, double offsetY, double offsetZ, double extra, @Nullable T data);
diff --git a/src/main/java/org/bukkit/event/player/PlayerMoveEvent.java b/src/main/java/org/bukkit/event/player/PlayerMoveEvent.java
-index 1b2267f4e..1a58734d9 100644
+index 1b2267f4..1a58734d 100644
--- a/src/main/java/org/bukkit/event/player/PlayerMoveEvent.java
+++ b/src/main/java/org/bukkit/event/player/PlayerMoveEvent.java
@@ -0,0 +0,0 @@ public class PlayerMoveEvent extends PlayerEvent implements Cancellable {
diff --git a/Spigot-API-Patches/Graduate-bungeecord-chat-API-from-spigot-subclasses.patch b/Spigot-API-Patches/Graduate-bungeecord-chat-API-from-spigot-subclasses.patch
index f0a4bcf72..08566f95f 100644
--- a/Spigot-API-Patches/Graduate-bungeecord-chat-API-from-spigot-subclasses.patch
+++ b/Spigot-API-Patches/Graduate-bungeecord-chat-API-from-spigot-subclasses.patch
@@ -68,7 +68,7 @@ index 87300a5d..d35d2def 100644
* Gets the name of the update folder. The update folder is used to safely
* update plugins at the right moment on a plugin load.
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
-index abd119dd..8bf46516 100644
+index 0fb36ebd..9a79e409 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -0,0 +0,0 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
diff --git a/Spigot-API-Patches/Material-API-additions.patch b/Spigot-API-Patches/Material-API-additions.patch
index 9c7804612..622079de5 100644
--- a/Spigot-API-Patches/Material-API-additions.patch
+++ b/Spigot-API-Patches/Material-API-additions.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Material API additions
diff --git a/src/main/java/org/bukkit/Material.java b/src/main/java/org/bukkit/Material.java
-index b9838dc96..9a1c37248 100644
+index 9dc0ed03..535179c2 100644
--- a/src/main/java/org/bukkit/Material.java
+++ b/src/main/java/org/bukkit/Material.java
@@ -0,0 +0,0 @@ import org.jetbrains.annotations.Nullable;
diff --git a/Spigot-API-Patches/POM-changes.patch b/Spigot-API-Patches/POM-changes.patch
index b2db52a8d..8e024c63a 100644
--- a/Spigot-API-Patches/POM-changes.patch
+++ b/Spigot-API-Patches/POM-changes.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] POM changes
diff --git a/pom.xml b/pom.xml
-index 23d0a44a2..aef4ec33d 100644
+index 78388c20..3617d769 100644
--- a/pom.xml
+++ b/pom.xml
@@ -0,0 +0,0 @@
@@ -22,7 +22,7 @@ index 23d0a44a2..aef4ec33d 100644
- spigot-api
+ com.destroystokyo.paper
+ paper-api
- 1.14.4-R0.1-SNAPSHOT
+ 1.15-R0.1-SNAPSHOT
jar
- Spigot-API
@@ -94,7 +94,7 @@ index 23d0a44a2..aef4ec33d 100644
org.apache.maven.plugins
maven-compiler-plugin
- 3.8.0
+ 3.8.1
-
-
- eclipse
diff --git a/Spigot-API-Patches/Player-Tab-List-and-Title-APIs.patch b/Spigot-API-Patches/Player-Tab-List-and-Title-APIs.patch
index 666339439..b1b3d2da3 100644
--- a/Spigot-API-Patches/Player-Tab-List-and-Title-APIs.patch
+++ b/Spigot-API-Patches/Player-Tab-List-and-Title-APIs.patch
@@ -384,18 +384,17 @@ index 00000000..4fe18540
+ }
+}
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
-index 8bf46516..4d6b06da 100644
+index 9a79e409..81677fcd 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -0,0 +0,0 @@
package org.bukkit.entity;
import java.net.InetSocketAddress;
-+
-+import com.destroystokyo.paper.Title;
- import org.bukkit.Achievement;
++import com.destroystokyo.paper.Title; // Paper
import org.bukkit.DyeColor;
import org.bukkit.Effect;
+ import org.bukkit.GameMode;
@@ -0,0 +0,0 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
public default void sendMessage(net.md_5.bungee.api.ChatMessageType position, net.md_5.bungee.api.chat.BaseComponent... components) {
spigot().sendMessage(position, components);
diff --git a/Spigot-API-Patches/Player-affects-spawning-API.patch b/Spigot-API-Patches/Player-affects-spawning-API.patch
index e4e212d12..ac9e8eb56 100644
--- a/Spigot-API-Patches/Player-affects-spawning-API.patch
+++ b/Spigot-API-Patches/Player-affects-spawning-API.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Player affects spawning API
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
-index bf0b8bf1..b0ead72d 100644
+index 63c6d6a1..46912889 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -0,0 +0,0 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
diff --git a/Spigot-API-Patches/Player.setPlayerProfile-API.patch b/Spigot-API-Patches/Player.setPlayerProfile-API.patch
index 851a32a0b..f51544590 100644
--- a/Spigot-API-Patches/Player.setPlayerProfile-API.patch
+++ b/Spigot-API-Patches/Player.setPlayerProfile-API.patch
@@ -6,17 +6,17 @@ Subject: [PATCH] Player.setPlayerProfile API
This can be useful for changing name or skins after a player has logged in.
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
-index d069a84c..f89b6c6b 100644
+index 2bd1af78..f9a3a3e5 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -0,0 +0,0 @@ package org.bukkit.entity;
- import java.net.InetSocketAddress;
- import com.destroystokyo.paper.Title;
-+import com.destroystokyo.paper.profile.PlayerProfile;
- import org.bukkit.Achievement;
+ import java.net.InetSocketAddress;
+ import com.destroystokyo.paper.Title; // Paper
++import com.destroystokyo.paper.profile.PlayerProfile; // Paper
import org.bukkit.DyeColor;
import org.bukkit.Effect;
+ import org.bukkit.GameMode;
@@ -0,0 +0,0 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
* was {@link org.bukkit.event.player.PlayerResourcePackStatusEvent.Status#SUCCESSFULLY_LOADED}
*/
diff --git a/Spigot-API-Patches/Timings-v2.patch b/Spigot-API-Patches/Timings-v2.patch
index 0399a1822..e2b35c526 100644
--- a/Spigot-API-Patches/Timings-v2.patch
+++ b/Spigot-API-Patches/Timings-v2.patch
@@ -3714,7 +3714,7 @@ index 6023e4f6..00000000
- // Spigot end
-}
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
-index ae6274d7..bf0b8bf1 100644
+index 010b4675..63c6d6a1 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -0,0 +0,0 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM
diff --git a/Spigot-API-Patches/Use-ASM-for-event-executors.patch b/Spigot-API-Patches/Use-ASM-for-event-executors.patch
index 5fe753de6..df39472e9 100644
--- a/Spigot-API-Patches/Use-ASM-for-event-executors.patch
+++ b/Spigot-API-Patches/Use-ASM-for-event-executors.patch
@@ -6,11 +6,11 @@ Subject: [PATCH] Use ASM for event executors.
Uses method handles for private or static methods.
diff --git a/pom.xml b/pom.xml
-index 2daee11a2..709b7a222 100644
+index 2c2823b3..a6567413 100644
--- a/pom.xml
+++ b/pom.xml
@@ -0,0 +0,0 @@
- 7.1
+ 7.2
test
+
@@ -29,7 +29,7 @@ index 2daee11a2..709b7a222 100644
diff --git a/src/main/java/com/destroystokyo/paper/event/executor/MethodHandleEventExecutor.java b/src/main/java/com/destroystokyo/paper/event/executor/MethodHandleEventExecutor.java
new file mode 100644
-index 000000000..5b28e9b1d
+index 00000000..5b28e9b1
--- /dev/null
+++ b/src/main/java/com/destroystokyo/paper/event/executor/MethodHandleEventExecutor.java
@@ -0,0 +0,0 @@
@@ -77,7 +77,7 @@ index 000000000..5b28e9b1d
+}
diff --git a/src/main/java/com/destroystokyo/paper/event/executor/StaticMethodHandleEventExecutor.java b/src/main/java/com/destroystokyo/paper/event/executor/StaticMethodHandleEventExecutor.java
new file mode 100644
-index 000000000..c83672427
+index 00000000..c8367242
--- /dev/null
+++ b/src/main/java/com/destroystokyo/paper/event/executor/StaticMethodHandleEventExecutor.java
@@ -0,0 +0,0 @@
@@ -126,7 +126,7 @@ index 000000000..c83672427
+}
diff --git a/src/main/java/com/destroystokyo/paper/event/executor/asm/ASMEventExecutorGenerator.java b/src/main/java/com/destroystokyo/paper/event/executor/asm/ASMEventExecutorGenerator.java
new file mode 100644
-index 000000000..b6e7d8ee8
+index 00000000..b6e7d8ee
--- /dev/null
+++ b/src/main/java/com/destroystokyo/paper/event/executor/asm/ASMEventExecutorGenerator.java
@@ -0,0 +0,0 @@
@@ -179,7 +179,7 @@ index 000000000..b6e7d8ee8
+}
diff --git a/src/main/java/com/destroystokyo/paper/event/executor/asm/ClassDefiner.java b/src/main/java/com/destroystokyo/paper/event/executor/asm/ClassDefiner.java
new file mode 100644
-index 000000000..beed9e6e0
+index 00000000..beed9e6e
--- /dev/null
+++ b/src/main/java/com/destroystokyo/paper/event/executor/asm/ClassDefiner.java
@@ -0,0 +0,0 @@
@@ -220,7 +220,7 @@ index 000000000..beed9e6e0
+}
diff --git a/src/main/java/com/destroystokyo/paper/event/executor/asm/SafeClassDefiner.java b/src/main/java/com/destroystokyo/paper/event/executor/asm/SafeClassDefiner.java
new file mode 100644
-index 000000000..ac99477e9
+index 00000000..ac99477e
--- /dev/null
+++ b/src/main/java/com/destroystokyo/paper/event/executor/asm/SafeClassDefiner.java
@@ -0,0 +0,0 @@
@@ -292,7 +292,7 @@ index 000000000..ac99477e9
+}
diff --git a/src/main/java/com/destroystokyo/paper/utils/UnsafeUtils.java b/src/main/java/com/destroystokyo/paper/utils/UnsafeUtils.java
new file mode 100644
-index 000000000..72e48e8ef
+index 00000000..72e48e8e
--- /dev/null
+++ b/src/main/java/com/destroystokyo/paper/utils/UnsafeUtils.java
@@ -0,0 +0,0 @@
@@ -332,7 +332,7 @@ index 000000000..72e48e8ef
+ }
+}
diff --git a/src/main/java/org/bukkit/plugin/EventExecutor.java b/src/main/java/org/bukkit/plugin/EventExecutor.java
-index a850f0780..9026e108c 100644
+index a850f078..9026e108 100644
--- a/src/main/java/org/bukkit/plugin/EventExecutor.java
+++ b/src/main/java/org/bukkit/plugin/EventExecutor.java
@@ -0,0 +0,0 @@ import org.bukkit.event.EventException;
@@ -412,7 +412,7 @@ index a850f0780..9026e108c 100644
+ // Paper end
}
diff --git a/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java b/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java
-index 12601db68..06b6724fa 100644
+index 12601db6..06b6724f 100644
--- a/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java
+++ b/src/main/java/org/bukkit/plugin/java/JavaPluginLoader.java
@@ -0,0 +0,0 @@ public final class JavaPluginLoader implements PluginLoader {
diff --git a/Spigot-API-Patches/Version-Command-2.0.patch b/Spigot-API-Patches/Version-Command-2.0.patch
index 043c2b573..61d4a173d 100644
--- a/Spigot-API-Patches/Version-Command-2.0.patch
+++ b/Spigot-API-Patches/Version-Command-2.0.patch
@@ -72,7 +72,7 @@ index 72c5501e..c0ff133d 100644
// Paper end
}
diff --git a/src/main/java/org/bukkit/command/defaults/VersionCommand.java b/src/main/java/org/bukkit/command/defaults/VersionCommand.java
-index 9d8360f7..b3345cba 100644
+index cbce5244..0486abd1 100644
--- a/src/main/java/org/bukkit/command/defaults/VersionCommand.java
+++ b/src/main/java/org/bukkit/command/defaults/VersionCommand.java
@@ -0,0 +0,0 @@
@@ -98,16 +98,6 @@ index 9d8360f7..b3345cba 100644
public VersionCommand(@NotNull String name) {
super(name);
-@@ -0,0 +0,0 @@ public class VersionCommand extends BukkitCommand {
-
- if (args.length == 0) {
- sender.sendMessage("This server is running " + Bukkit.getName() + " version " + Bukkit.getVersion() + " (Implementing API version " + Bukkit.getBukkitVersion() + ")");
-- sender.sendMessage(ChatColor.YELLOW + "This is a final build for 1.14.4. Please see https://www.spigotmc.org/go/1.14.4 for details about upgrading.");
-- // sendVersion(sender);
-+ sendVersion(sender); // Paper - Not dead yet, Jim!
- } else {
- StringBuilder name = new StringBuilder();
-
@@ -0,0 +0,0 @@ public class VersionCommand extends BukkitCommand {
private void sendVersion(@NotNull CommandSender sender) {
diff --git a/work/BuildData b/work/BuildData
index 2dbde4c18..f845c6ee8 160000
--- a/work/BuildData
+++ b/work/BuildData
@@ -1 +1 @@
-Subproject commit 2dbde4c18d3b3e34142da21d42cea4b1beb33d7d
+Subproject commit f845c6ee8a6d41562c71dc218c7d5b7b9eeb03d6
diff --git a/work/Bukkit b/work/Bukkit
index 8b6dd1038..cff5f1c33 160000
--- a/work/Bukkit
+++ b/work/Bukkit
@@ -1 +1 @@
-Subproject commit 8b6dd103832def3e8d1a7c3cdb98cde9826d543c
+Subproject commit cff5f1c332ebd788c79e0f7497d52ce6e11af0ba
diff --git a/work/CraftBukkit b/work/CraftBukkit
index 656701746..de42aa13f 160000
--- a/work/CraftBukkit
+++ b/work/CraftBukkit
@@ -1 +1 @@
-Subproject commit 656701746abf477beb78cb6108298b20dc053cf1
+Subproject commit de42aa13f387632b360c5b1b003b212499f3f4f2
diff --git a/work/Spigot b/work/Spigot
index 56f84710b..530f6689b 160000
--- a/work/Spigot
+++ b/work/Spigot
@@ -1 +1 @@
-Subproject commit 56f84710b85569a76df91e08104baa55000b565a
+Subproject commit 530f6689ba4fea0365550cc95a50d6b76bbd9dbb