@Override
 public int hashCode() {
   int result = str1.hashCode();
   result = 31 * result + str2.hashCode();
   result = 31 * result + dist.hashCode();
   return result;
 }
 @Override
 public int hashCode() {
   int h = a.hashCode();
   h ^= (h << 13) | (h >>> 20);
   h += b.hashCode();
   h ^= (h << 23) | (h >>> 10);
   h += name().hashCode();
   return h;
 }
 @Override
 public int hashCode() {
   int h = q.hashCode();
   h ^= (h << 17) | (h >>> 16);
   h += boostVal.hashCode();
   h ^= (h << 8) | (h >>> 25);
   h += Float.floatToIntBits(getBoost());
   return h;
 }
 @Override
 public int hashCode() {
   return source.hashCode() + TestValueSource.class.hashCode();
 }
 @Override
 public int hashCode() {
   return source.hashCode() + name().hashCode();
 }
 /** Returns a hash code value for this object. */
 @Override
 public int hashCode() {
   return func.hashCode() * 31 + Float.floatToIntBits(getBoost());
 }