public override bool Equals(object obj)
 {
     try
     {
         TripleKey <TKey1, TKey2, TKey3> other = (TripleKey <TKey1, TKey2, TKey3>)obj;
         return(this.Equals(other));
     }
     catch
     {
         return(false);
     }
 }
 public bool Equals(TripleKey <TKey1, TKey2, TKey3> other)
 {
     return(object.Equals(Key1, other.Key1) && object.Equals(Key2, other.Key2) && object.Equals(Key3, other.Key3));
 }