<PackageReference Include="BouncyCastle.Cryptography" Version="2.7.0" />

Org.BouncyCastle.Math.Raw.Nat512

static class Nat512
namespace Org.BouncyCastle.Math.Raw { internal static class Nat512 { public static void Mul(uint[] x, uint[] y, uint[] zz); public static void Square(uint[] x, uint[] zz); public static void Xor(uint[] x, uint y, uint[] z); public static void Xor(uint[] x, int xOff, uint y, uint[] z, int zOff); public static void Xor(ReadOnlySpan<uint> x, uint y, Span<uint> z); public static void Xor(uint[] x, uint[] y, uint[] z); public static void Xor(uint[] x, int xOff, uint[] y, int yOff, uint[] z, int zOff); public static void Xor(ReadOnlySpan<uint> x, ReadOnlySpan<uint> y, Span<uint> z); public static void Xor64(ulong[] x, ulong y, ulong[] z); public static void Xor64(ulong[] x, int xOff, ulong y, ulong[] z, int zOff); public static void Xor64(ReadOnlySpan<ulong> x, ulong y, Span<ulong> z); public static void Xor64(ulong[] x, ulong[] y, ulong[] z); public static void Xor64(ulong[] x, int xOff, ulong[] y, int yOff, ulong[] z, int zOff); public static void Xor64(ReadOnlySpan<ulong> x, ReadOnlySpan<ulong> y, Span<ulong> z); public static void XorBothTo(uint[] x, uint[] y, uint[] z); public static void XorBothTo(uint[] x, int xOff, uint[] y, int yOff, uint[] z, int zOff); public static void XorBothTo(ReadOnlySpan<uint> x, ReadOnlySpan<uint> y, Span<uint> z); public static void XorBothTo64(ulong[] x, ulong[] y, ulong[] z); public static void XorBothTo64(ulong[] x, int xOff, ulong[] y, int yOff, ulong[] z, int zOff); public static void XorBothTo64(ReadOnlySpan<ulong> x, ReadOnlySpan<ulong> y, Span<ulong> z); public static void XorTo(uint[] x, uint[] z); public static void XorTo(uint[] x, int xOff, uint[] z, int zOff); public static void XorTo(ReadOnlySpan<uint> x, Span<uint> z); public static void XorTo64(ulong[] x, ulong[] z); public static void XorTo64(ulong[] x, int xOff, ulong[] z, int zOff); public static void XorTo64(ReadOnlySpan<ulong> x, Span<ulong> z); public static void XorToEachOther(uint[] u, uint[] v); public static void XorToEachOther(uint[] u, int uOff, uint[] v, int vOff); public static void XorToEachOther(Span<uint> u, Span<uint> v); public static void XorToEachOther64(ulong[] u, ulong[] v); public static void XorToEachOther64(ulong[] u, int uOff, ulong[] v, int vOff); public static void XorToEachOther64(Span<ulong> u, Span<ulong> v); public static void Zero(uint[] z); public static void Zero(uint[] z, int zOff); public static void Zero(Span<uint> z); public static void Zero64(ulong[] z); public static void Zero64(ulong[] z, int zOff); public static void Zero64(Span<ulong> z); } }