@Override public int hashCode(){
  int result;
  long temp;
  temp=m != 0.0d ? Double.doubleToLongBits(m) : 0L;
  result=(int)(temp ^ (temp >>> 32));
  temp=t != 0.0d ? Double.doubleToLongBits(t) : 0L;
  result=29 * result + (int)(temp ^ (temp >>> 32));
  return result;
}

@ Override public int hashCode ( ) { int result ; long temp ; temp = m != 0.0d ? Double . doubleToLongBits ( m ) : 0L ; result = ( int ) ( temp ^ ( temp > > > 32 ) ) ; temp = t != 0.0d ? Double . doubleToLongBits ( t ) : 0L ; result = 29 * result + ( int ) ( temp ^ ( temp > > > 32 ) ) ; return result ; }
returns a hash code value for this object
