private long getLongHash(long key) {
    key = (~key) + (key << 21); // key = (key << 21) - key - 1;
    key = key ^ (key >> 24);
    key = (key + (key << 3)) + (key << 8); // key * 265
    key = key ^ (key >> 14);
    key = (key + (key << 2)) + (key << 4); // key * 21
    key = key ^ (key >> 28);
    key = key + (key << 31);
    return key;
  }
A constructor to support rebuilding the BloomFilter from a serialized representation.
@param bits - bits are used as such for bitset and are NOT copied, any changes to bits will affect bloom filter
@param numFuncs - number of hash functions
storage-api/src/java/org/apache/hive/common/util/BloomFilter.java