public override bool Equals(object o)
 {
     if (this == o)
     {
         return(true);
     }
     if (!(o is Edu.Stanford.Nlp.IE.Machinereading.Structure.RelationMention))
     {
         return(false);
     }
     if (!base.Equals(o))
     {
         return(false);
     }
     Edu.Stanford.Nlp.IE.Machinereading.Structure.RelationMention that = (Edu.Stanford.Nlp.IE.Machinereading.Structure.RelationMention)o;
     if (argNames != null ? !argNames.Equals(that.argNames) : that.argNames != null)
     {
         return(false);
     }
     if (args != null ? !args.Equals(that.args) : that.args != null)
     {
         return(false);
     }
     if (signature != null ? !signature.Equals(that.signature) : that.signature != null)
     {
         return(false);
     }
     return(true);
 }
 public virtual bool ArgsMatch(Edu.Stanford.Nlp.IE.Machinereading.Structure.RelationMention rel)
 {
     return(ArgsMatch(rel.GetArgs()));
 }