public override bool Equals(object obj) { if (obj == null || GetType() != obj.GetType()) return false; Token other = obj as Token; if (other.Value == Value && other.Line == Line && other.Position == Position) return true; return false; }