// Returns a uid generated from the system's random number generator Uid UidFromTrueRand(void) { Uid result = Zi; TrueRand(StringFromStruct(&result)); return result; } // Combines 2 uids into a new uid Uid CombineUid(Uid a, Uid b) { Uid result; result.hi = (a.hi * 3) + b.hi; result.lo = (a.lo * 3) + b.lo; result.hi += result.lo; result.lo += result.hi; result.hi = MixU64(result.hi); result.lo = MixU64(result.lo); result.hi += result.lo; result.lo += result.hi; return result; }