namespace UIWidgets { public class ListNode { public int Depth; public TreeNode Node; public ListNode(TreeNode node, int depth) { Node = node; Depth = depth; } public override bool Equals(object obj) { ListNode listNode = obj as ListNode; if (listNode == null) { return this == null; } if (this == null) { return false; } return Node.Equals(listNode.Node); } public override int GetHashCode() { return base.GetHashCode(); } public static bool operator ==(ListNode a, ListNode b) { bool flag = object.ReferenceEquals(null, a); bool flag2 = object.ReferenceEquals(null, b); if (flag && flag2) { return true; } if (flag != flag2) { return false; } return a.Node.Equals(b.Node); } public static bool operator !=(ListNode a, ListNode b) { bool flag = object.ReferenceEquals(null, a); bool flag2 = object.ReferenceEquals(null, b); if (flag && flag2) { return false; } if (flag != flag2) { return true; } return !a.Node.Equals(b.Node); } } }