This makes it much easier to write (template) functions that accept either a signed or unsigned bigint parameter.
@@ -0,0 +1,19 @@
+/*
+ * Copyright (c) 2021, the SerenityOS developers.
+ *
+ * SPDX-License-Identifier: BSD-2-Clause
+ */
+
+#pragma once
+#include <AK/Concepts.h>
+namespace Crypto {
+class SignedBigInteger;
+class UnsignedBigInteger;
+template<typename T>
+concept BigInteger = IsSame<T, SignedBigInteger> || IsSame<T, UnsignedBigInteger>;
+}