public static int Zag(uint ziggedValue) { int value = (int)ziggedValue; return (-(value & 0x01)) ^ ((value >> 1) & ~Util.Int32Msb); }