@Override
    public boolean equals (Object o) {
        if (this == o) {
            return true;
        }
        if (!(o instanceof Triple)) {
            return false;
        }

        Triple triple = (Triple) o;

        if (_1 != null ? !_1.equals(triple._1) : triple._1 != null) {
            return false;
        }
        if (_2 != null ? !_2.equals(triple._2) : triple._2 != null) {
            return false;
        }
        if (_3 != null ? !_3.equals(triple._3) : triple._3 != null) {
            return false;
        }

        return true;
    }