public override int GetHashCode() { unchecked { var hashCode = (_rows != null ? _rows.GetHashCode() : 0); hashCode = (hashCode * 397) ^ (_columns != null ? _columns.GetHashCode() : 0); hashCode = (hashCode * 397) ^ (_squares != null ? _squares.GetHashCode() : 0); return(hashCode); } }