private static void JenkinsLookup3Mix(ref uint a, ref uint b, ref uint c)
 {
     a -= c; a ^= ChecksumUtils.JenkinsLookup3Rot(c, 4);    c += b;
     b -= a; b ^= ChecksumUtils.JenkinsLookup3Rot(a, 6);    a += c;
     c -= b; c ^= ChecksumUtils.JenkinsLookup3Rot(b, 8);    b += a;
     a -= c; a ^= ChecksumUtils.JenkinsLookup3Rot(c, 16);   c += b;
     b -= a; b ^= ChecksumUtils.JenkinsLookup3Rot(a, 19);   a += c;
     c -= b; c ^= ChecksumUtils.JenkinsLookup3Rot(b, 4);    b += a;
 }
 private static void JenkinsLookup3Final(ref uint a, ref uint b, ref uint c)
 {
     c ^= b; c -= ChecksumUtils.JenkinsLookup3Rot(b, 14);
     a ^= c; a -= ChecksumUtils.JenkinsLookup3Rot(c, 11);
     b ^= a; b -= ChecksumUtils.JenkinsLookup3Rot(a, 25);
     c ^= b; c -= ChecksumUtils.JenkinsLookup3Rot(b, 16);
     a ^= c; a -= ChecksumUtils.JenkinsLookup3Rot(c, 4);
     b ^= a; b -= ChecksumUtils.JenkinsLookup3Rot(a, 14);
     c ^= b; c -= ChecksumUtils.JenkinsLookup3Rot(b, 24);
 }