private void ObjectInvariant() {
Contract.Invariant(this.sourceDocument != null);
Contract.Invariant(length >= 0);
Contract.Invariant(length <= this.SourceDocument.Length);
Contract.Invariant(0 <= this.StartIndex+length);
Contract.Invariant(this.StartIndex+length <= this.SourceDocument.Length);
}