public static long Zag(ulong ziggedValue) { long value = (long)ziggedValue; return (-(value & 0x01L)) ^ ((value >> 1) & ~Util.Int64Msb); } }