public bool Equals(ISequence <T> that) { if (that == null) { return(false); } else if (this.Length != that.Length) { return(false); } else { return(Indices.All(i => EqualItems(this[i], that[i]))); } }