code: public static long hash(final long in, final long seed) {
      long hash = seed + P5;
      hash += 8;
      long k1 = in;
      k1 *= P2;
      k1 = Long.rotateLeft(k1, 31);
      k1 *= P1;
      hash ^= k1;
      hash = (Long.rotateLeft(hash, 27) * P1) + P4;
      return finalize(hash);
    }
docs: Returns a 64-bit hash.
  @param in a long
  @param seed A long valued seed.
  @return the hash