@Override
  public final boolean equals(Object o){
    return o instanceof Trinity
           && Comparing.equal(first, ((Trinity<?,?,?>)o).first)
           && Comparing.equal(second, ((Trinity<?,?,?>)o).second)
           && Comparing.equal(third, ((Trinity<?,?,?>)o).third);
  }
@Override
  public final boolean equals(Object o)