private static int compareUnsigned(long a, long b)
    {
        return compareSigned(flip(a), flip(b));
    }
Compares the two specified {@code long} values, treating them as unsigned values between {@code 0} and
{@code 2^64 - 1} inclusive.

@param a
           the first unsigned {@code long} to compare
@param b
           the second unsigned {@code long} to compare
@return a negative value if {@code a} is less than {@code b}; a positive value if {@code a} is greater than
        {@code b}; or zero if they are equal
protostuff-api/src/main/java/io/protostuff/UnsignedNumberUtil.java