 
 diff --git a/api/src/main/java/io/github/waterfallmc/waterfall/utils/LowMemorySet.java b/api/src/main/java/io/github/waterfallmc/waterfall/utils/LowMemorySet.java
 new file mode 100644
-index 0000000..c62e3d4
+index 0000000..a1b6981
 --- /dev/null
 +++ b/api/src/main/java/io/github/waterfallmc/waterfall/utils/LowMemorySet.java
-@@ -0,0 +1,176 @@
+@@ -0,0 +1,151 @@
 +package io.github.waterfallmc.waterfall.utils;
-+
-+import lombok.*;
 +
 +import java.util.AbstractSet;
 +import java.util.ArrayList;

+ */
+public class LowMemorySet<T extends Comparable<T>> extends AbstractSet<T> implements Set<T> {
+    private final List<T> backing;
+    @Setter
+    private boolean trimAggressively;
+
+    protected LowMemorySet(List<T> list) {
+        this.backing = checkNotNull(list, "Null list");
+        this.sort(); // We have to sort any initial elements
+        this.trim(true);
+    }
+
+    public static <T extends Comparable<T>> LowMemorySet<T> create() {

+
+    @Override
+    public boolean removeIf(Predicate<? super T> filter) {
+        return backing.removeIf(filter);
+    }
+}
diff --git a/api/src/main/java/net/md_5/bungee/api/score/Team.java b/api/src/main/java/net/md_5/bungee/api/score/Team.java
