diff --git a/PATCHES.md b/PATCHES.md
index 04ddbf31..0a167be0 100644
--- a/PATCHES.md
+++ b/PATCHES.md
@@ -77,6 +77,7 @@ # Patches
| api | Modify POM | tr7zw | |
| server | Modify POM | tr7zw | |
| server | Modify default configs | tr7zw | |
+| server | Nuke Bootstrap thread pool | foss-mc | Ivan Pekov |
| server | Nuke streams off BlockPosition | Ivan Pekov | |
| server | Nuke streams off SectionPosition | Ivan Pekov | |
| server | Optimize BehaviorController | MrIvanPlays | |
@@ -105,7 +106,6 @@ # Patches
| server | Respect PlayerKickEvent leaveMessage | Ivan Pekov | |
| server | Respect permissions when constructing InventoryEnderChest | Ivan Pekov | |
| server | Send more packets immediately | MrIvanPlays | |
-| server | Shutdown Bootstrap thread pool | foss-mc | |
| server | Skip events if there's no listeners | William Blake Galbreath | |
| server | Snowman drop and put back pumpkin | William Blake Galbreath | |
| server | Squid EAR immunity | William Blake Galbreath | |
diff --git a/Purpur b/Purpur
index fc3376c2..8726ad95 160000
--- a/Purpur
+++ b/Purpur
@@ -1 +1 @@
-Subproject commit fc3376c26dcc05cacf6aa6897b43f843f7c1c5ca
+Subproject commit 8726ad9583aebc325bc5671e4b19db4ab5cefe67
diff --git a/Tuinity b/Tuinity
index 1c058587..5994cb01 160000
--- a/Tuinity
+++ b/Tuinity
@@ -1 +1 @@
-Subproject commit 1c058587d99bc220c98b50ad03ae0f1751debf19
+Subproject commit 5994cb01c1c6b133fe73b6bd55b2702181c6d046
diff --git a/patches/server/0002-Modify-POM.patch b/patches/server/0002-Modify-POM.patch
index d5c66ca5..0d604737 100644
--- a/patches/server/0002-Modify-POM.patch
+++ b/patches/server/0002-Modify-POM.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Modify POM
diff --git a/pom.xml b/pom.xml
-index f009b05e4c2ab0f093150a9eecff5629db35b517..eb20fadc4c53d7f8e34f4f8e8caa58f943eaf4e8 100644
+index 5e25ae55e44e31d232b088b7c3c39df69b0cc875..7e1c319897728af0943a5ce71f7220d97f0a7153 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1,11 +1,11 @@
@@ -53,7 +53,7 @@ index f009b05e4c2ab0f093150a9eecff5629db35b517..eb20fadc4c53d7f8e34f4f8e8caa58f9
${project.version}
compile
-@@ -153,6 +162,15 @@
+@@ -154,6 +163,15 @@
spigotmc-public
https://hub.spigotmc.org/nexus/content/groups/public/
@@ -69,7 +69,7 @@ index f009b05e4c2ab0f093150a9eecff5629db35b517..eb20fadc4c53d7f8e34f4f8e8caa58f9
-@@ -164,15 +182,15 @@
+@@ -165,15 +183,15 @@
diff --git a/patches/server/0006-Add-config-Yatopia-command-and-basic-settings.patch b/patches/server/0006-Add-config-Yatopia-command-and-basic-settings.patch
index 480f937e..d2ec359e 100644
--- a/patches/server/0006-Add-config-Yatopia-command-and-basic-settings.patch
+++ b/patches/server/0006-Add-config-Yatopia-command-and-basic-settings.patch
@@ -17,10 +17,10 @@ index b67f05f290db653cf75a89e85bd3decb5044a1e0..11758b6b158d971b9beb1b609d7513da
new TimingsExport(listeners, parent, history).start();
diff --git a/src/main/java/net/minecraft/server/DedicatedServer.java b/src/main/java/net/minecraft/server/DedicatedServer.java
-index 943273206e6123fdd101aafb6505a7c5bfe8d980..21058e0f08bd689901bcf51eef7198de791642f1 100644
+index 050e0d7ec29755590dde2f35090b96f6f2457952..dde91498e773cc6744612f780ce82bd35ad79637 100644
--- a/src/main/java/net/minecraft/server/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/DedicatedServer.java
-@@ -181,6 +181,15 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer
+@@ -177,6 +177,15 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer
// Paper end
com.tuinity.tuinity.config.TuinityConfig.init((java.io.File) options.valueOf("tuinity-settings")); // Tuinity - Server Config
diff --git a/patches/server/0009-Add-NBT-API-as-a-first-class-lib.patch b/patches/server/0009-Add-NBT-API-as-a-first-class-lib.patch
index 690b4c1d..90002948 100644
--- a/patches/server/0009-Add-NBT-API-as-a-first-class-lib.patch
+++ b/patches/server/0009-Add-NBT-API-as-a-first-class-lib.patch
@@ -5,10 +5,10 @@ Subject: [PATCH] Add NBT API as a first-class lib
diff --git a/pom.xml b/pom.xml
-index eb20fadc4c53d7f8e34f4f8e8caa58f943eaf4e8..d8e7edc27dc1107272a87e7f9396f50136b662a8 100644
+index 7e1c319897728af0943a5ce71f7220d97f0a7153..4e9dfd79751fbf5c926c9683a2c8bb2800c60f0c 100644
--- a/pom.xml
+++ b/pom.xml
-@@ -320,6 +320,10 @@
+@@ -321,6 +321,10 @@
net.minecraft.server
net.minecraft.server.v${minecraft_version}
diff --git a/patches/server/0023-Redirect-Configs.patch b/patches/server/0023-Redirect-Configs.patch
index 9758c00e..8ec3246d 100644
--- a/patches/server/0023-Redirect-Configs.patch
+++ b/patches/server/0023-Redirect-Configs.patch
@@ -73,10 +73,10 @@ index bbf09800b7b72bdfb75c91e4c6c77fe00e3ad436..1d98bfdee95fb1052fcd9f141a2ab82b
for (final Method method : clazz.getDeclaredMethods()) {
if (method.getReturnType() != void.class || method.getParameterCount() != 0 ||
diff --git a/src/main/java/net/minecraft/server/DedicatedServer.java b/src/main/java/net/minecraft/server/DedicatedServer.java
-index 21058e0f08bd689901bcf51eef7198de791642f1..f5a417bc349ee691a8d4b21eb39e6a6225ed96d9 100644
+index dde91498e773cc6744612f780ce82bd35ad79637..70d22f03162df1855fa8632127ef1a3e6703c4be 100644
--- a/src/main/java/net/minecraft/server/DedicatedServer.java
+++ b/src/main/java/net/minecraft/server/DedicatedServer.java
-@@ -189,6 +189,8 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer
+@@ -185,6 +185,8 @@ public class DedicatedServer extends MinecraftServer implements IMinecraftServer
return false;
}
net.yatopia.server.YatopiaConfig.registerCommands();
diff --git a/patches/server/0049-Shutdown-Bootstrap-thread-pool.patch b/patches/server/0049-Nuke-Bootstrap-thread-pool.patch
similarity index 62%
rename from patches/server/0049-Shutdown-Bootstrap-thread-pool.patch
rename to patches/server/0049-Nuke-Bootstrap-thread-pool.patch
index 03dffedf..170e64f5 100644
--- a/patches/server/0049-Shutdown-Bootstrap-thread-pool.patch
+++ b/patches/server/0049-Nuke-Bootstrap-thread-pool.patch
@@ -1,14 +1,15 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: foss-mc <69294560+foss-mc@users.noreply.github.com>
Date: Sat, 12 Sep 2020 11:12:23 +0800
-Subject: [PATCH] Shutdown Bootstrap thread pool
+Subject: [PATCH] Nuke Bootstrap thread pool
+Co-authored-by: Ivan Pekov
diff --git a/src/main/java/net/minecraft/server/DataConverterRegistry.java b/src/main/java/net/minecraft/server/DataConverterRegistry.java
-index 48e31e9142ffeb2725af6b1f483de67410e25694..b149e32aac86ce2f7521958fa7394e4f5b852174 100644
+index 48e31e9142ffeb2725af6b1f483de67410e25694..1b5b06cad7771a7d351aca0a009d902f23f07d9d 100644
--- a/src/main/java/net/minecraft/server/DataConverterRegistry.java
+++ b/src/main/java/net/minecraft/server/DataConverterRegistry.java
-@@ -15,14 +15,16 @@ public class DataConverterRegistry {
+@@ -15,14 +15,15 @@ public class DataConverterRegistry {
private static final BiFunction a = Schema::new;
private static final BiFunction b = DataConverterSchemaNamed::new;
@@ -22,32 +23,36 @@ index 48e31e9142ffeb2725af6b1f483de67410e25694..b149e32aac86ce2f7521958fa7394e4f
a(datafixerbuilder);
- return datafixerbuilder.build(SystemUtils.e());
-+ c = datafixerbuilder.build(SystemUtils.d);
-+ SystemUtils.d.shutdown();
++ c = datafixerbuilder.build(SystemUtils.getMainExecutor());
}
+ // Yatopia end
public static DataFixer getDataFixer() { return a(); } // Paper - OBFHELPER
public static DataFixer a() {
diff --git a/src/main/java/net/minecraft/server/SystemUtils.java b/src/main/java/net/minecraft/server/SystemUtils.java
-index 20f1c25db110c17eff6630c9db2e109e58159a22..51cbe01e171f8019a8b57c91c55980280d6857db 100644
+index 869dcf1545601358a273a5cfb47afa88fa13a11c..cbb5bcbeaac5487c99b6f2171a5ba28ea7fe171a 100644
--- a/src/main/java/net/minecraft/server/SystemUtils.java
+++ b/src/main/java/net/minecraft/server/SystemUtils.java
@@ -48,7 +48,7 @@ import org.apache.logging.log4j.Logger;
public class SystemUtils {
private static final AtomicInteger c = new AtomicInteger(1);
-- private static final ExecutorService d = a("Bootstrap");
-+ public static final ExecutorService d = a("Bootstrap"); // Yatopia - private -> public
- private static final ExecutorService e = a("Main");
+- private static final ExecutorService d = a("Bootstrap", -2); // Paper - add -2 priority
++ //private static final ExecutorService d = a("Bootstrap", -2); // Paper - add -2 priority // Yatopia - nuke this shit
+ private static final ExecutorService e = a("Main", -1); // Paper - add -1 priority
private static final ExecutorService f = n();
public static LongSupplier a = System::nanoTime;
-@@ -111,7 +111,7 @@ public class SystemUtils {
+@@ -111,10 +111,13 @@ public class SystemUtils {
return (ExecutorService) object;
}
-- public static Executor e() {
-+ public static Executor e_unused() { // Yatopia - unused
++ /* // Yatopia start - ditch this
+ public static Executor e() {
return SystemUtils.d;
}
++ */ // Yatopia end
++ public static Executor getMainExecutor() { return f(); } // Yatopia - OBFHELPER
+ public static Executor f() {
+ return SystemUtils.e;
+ }