diff --git a/lib/util/chans/try.go b/lib/util/chans/try.go
deleted file mode 100644
index 3b88d3d698643fb5c419cc7caa309ef1913e14ca..0000000000000000000000000000000000000000
--- a/lib/util/chans/try.go
+++ /dev/null
@@ -1,19 +0,0 @@
-package chans
-
-func TrySend[T any](ch chan<- T, value T) bool {
-	select {
-	case ch <- value:
-		return true
-	default:
-		return false
-	}
-}
-
-func TryRecv[T any](ch <-chan T) (T, bool) {
-	select {
-	case value, ok := <-ch:
-		return value, ok
-	default:
-		return *new(T), false
-	}
-}
diff --git a/lib/util/dio/reader.go b/lib/util/dio/reader.go
deleted file mode 100644
index 006a4cc2955db342201ae659466dee2a68498801..0000000000000000000000000000000000000000
--- a/lib/util/dio/reader.go
+++ /dev/null
@@ -1,11 +0,0 @@
-package dio
-
-import (
-	"io"
-	"time"
-)
-
-type Reader interface {
-	SetReadDeadline(deadline time.Time) error
-	io.Reader
-}
diff --git a/lib/util/dio/readwriter.go b/lib/util/dio/readwriter.go
deleted file mode 100644
index cf1c4229e85e9ba3cfb1f6e3b1d748f06b41efb5..0000000000000000000000000000000000000000
--- a/lib/util/dio/readwriter.go
+++ /dev/null
@@ -1,11 +0,0 @@
-package dio
-
-import (
-	"time"
-)
-
-type ReadWriter interface {
-	SetDeadline(deadline time.Time) error
-	Reader
-	Writer
-}
diff --git a/lib/util/dio/writer.go b/lib/util/dio/writer.go
deleted file mode 100644
index 7ccd29f4d93942c8bf4eab3e1849cd15b091d23a..0000000000000000000000000000000000000000
--- a/lib/util/dio/writer.go
+++ /dev/null
@@ -1,11 +0,0 @@
-package dio
-
-import (
-	"io"
-	"time"
-)
-
-type Writer interface {
-	SetWriteDeadline(deadline time.Time) error
-	io.Writer
-}
diff --git a/lib/util/maps/clear.go b/lib/util/maps/clear.go
deleted file mode 100644
index 11d592ea55ad13af9c021189913196715dfe5f04..0000000000000000000000000000000000000000
--- a/lib/util/maps/clear.go
+++ /dev/null
@@ -1,7 +0,0 @@
-package maps
-
-func Clear[K comparable, V any](m map[K]V) {
-	for k := range m {
-		delete(m, k)
-	}
-}
diff --git a/lib/util/maps/clone.go b/lib/util/maps/clone.go
deleted file mode 100644
index 88e44381dcdb05fa429b6481efa6ac3ccd85c297..0000000000000000000000000000000000000000
--- a/lib/util/maps/clone.go
+++ /dev/null
@@ -1,12 +0,0 @@
-package maps
-
-func Clone[K comparable, V any](value map[K]V) map[K]V {
-	if value == nil {
-		return nil
-	}
-	m := make(map[K]V, len(value))
-	for k, v := range value {
-		m[k] = v
-	}
-	return m
-}
diff --git a/lib/util/maths/clamp.go b/lib/util/maths/clamp.go
deleted file mode 100644
index cf46bc5793fe34caa0432eafb6626b3bd17d9303..0000000000000000000000000000000000000000
--- a/lib/util/maths/clamp.go
+++ /dev/null
@@ -1,5 +0,0 @@
-package maths
-
-func Clamp[T Ordered](x, min, max T) T {
-	return Min(Max(x, min), max)
-}
diff --git a/lib/util/maths/max.go b/lib/util/maths/max.go
deleted file mode 100644
index 62673d912a7ddd4dae7abe9d9a43c3394d7e94e9..0000000000000000000000000000000000000000
--- a/lib/util/maths/max.go
+++ /dev/null
@@ -1,8 +0,0 @@
-package maths
-
-func Max[T Ordered](a, b T) T {
-	if a > b {
-		return a
-	}
-	return b
-}
diff --git a/lib/util/maths/min.go b/lib/util/maths/min.go
deleted file mode 100644
index caf00b461d88c401707cecceead66a93417c9b1f..0000000000000000000000000000000000000000
--- a/lib/util/maths/min.go
+++ /dev/null
@@ -1,8 +0,0 @@
-package maths
-
-func Min[T Ordered](a, b T) T {
-	if a < b {
-		return a
-	}
-	return b
-}
diff --git a/lib/util/maths/ordered.go b/lib/util/maths/ordered.go
deleted file mode 100644
index 8af971a89154576fea5d58b3c39e6fbb0212b01d..0000000000000000000000000000000000000000
--- a/lib/util/maths/ordered.go
+++ /dev/null
@@ -1,7 +0,0 @@
-package maths
-
-type Ordered interface {
-	~int | ~int8 | ~int16 | ~int32 | ~int64 |
-		~uint | ~uint8 | ~uint16 | ~uint32 | ~uint64 |
-		~float32 | ~float64
-}
diff --git a/lib/util/queue/queue.go b/lib/util/queue/queue.go
deleted file mode 100644
index bb029b01cada5f8f1f675e0c6568ca3729bfe97d..0000000000000000000000000000000000000000
--- a/lib/util/queue/queue.go
+++ /dev/null
@@ -1,38 +0,0 @@
-package queue
-
-import "sync"
-
-type LIFO[T any] struct {
-	items  []T
-	signal sync.Cond
-	mu     sync.Mutex
-}
-
-func (v *LIFO[T]) init() {
-	if v.signal.L == nil {
-		v.signal.L = &v.mu
-	}
-}
-
-func (v *LIFO[T]) Push(item T) {
-	v.mu.Lock()
-	defer v.mu.Unlock()
-	v.init()
-
-	v.items = append(v.items, item)
-	v.signal.Signal()
-}
-
-func (v *LIFO[T]) Pop() T {
-	v.mu.Lock()
-	defer v.mu.Unlock()
-	v.init()
-
-	for len(v.items) == 0 {
-		v.signal.Wait()
-	}
-	item := v.items[len(v.items)-1]
-	v.items = v.items[:len(v.items)-1]
-
-	return item
-}
diff --git a/lib/util/slices/cloneinto.go b/lib/util/slices/cloneinto.go
deleted file mode 100644
index b544cc38bd9dc176c089036ad7d0f425bd681f22..0000000000000000000000000000000000000000
--- a/lib/util/slices/cloneinto.go
+++ /dev/null
@@ -1,9 +0,0 @@
-package slices
-
-func CloneInto[T any](dst, src []T) []T {
-	dst = Resize(dst, len(src))
-	for i, v := range src {
-		dst[i] = v
-	}
-	return dst
-}
diff --git a/lib/util/slices/equal.go b/lib/util/slices/equal.go
deleted file mode 100644
index 783ac85630aa78e0c5b3b5724d26b780a8c1d94d..0000000000000000000000000000000000000000
--- a/lib/util/slices/equal.go
+++ /dev/null
@@ -1,13 +0,0 @@
-package slices
-
-func Equal[T comparable](a, b []T) bool {
-	if len(a) != len(b) {
-		return false
-	}
-	for i := range a {
-		if a[i] != b[i] {
-			return false
-		}
-	}
-	return true
-}