/// <summary>Split this 128-bit UUID into two 64-bit numbers</summary> /// <param name="a">xxxxxxxx-xxxx-xxxx-....-............</param> /// <param name="b">........-....-....-xxxx-xxxx........</param> /// <param name="c">........-....-....-....-....xxxxxxxx</param> public void Deconstruct(out ulong a, out uint b, out uint c) { unsafe { byte *buffer = stackalloc byte[16]; WriteUnsafe(m_packed, buffer); a = UnsafeHelpers.LoadUInt64BE(buffer + 0); b = UnsafeHelpers.LoadUInt32BE(buffer + 8); c = UnsafeHelpers.LoadUInt32BE(buffer + 12); } }