/**
  * Returns a hash code for this state object.
  *
  * @return a hash code value for this object.
  */
 @Override
 public int hashCode() {
   int result = 17;
   if (id != null) result = 37 * result + id.hashCode();
   result = 37 * result + init.hashCode();
   return result;
 }