protected override int?GetLineNumber(ITextViewLine viewLine, ref LineNumberState state)
        {
            if (owner == null)
            {
                return(null);
            }
            CustomLineNumberState customState;

            if (state == null)
            {
                state = customState = new CustomLineNumberState();
            }
            else
            {
                customState = (CustomLineNumberState)state;
            }
            if (state.SnapshotLine == null || state.SnapshotLine.EndIncludingLineBreak != viewLine.Start)
            {
                state.SnapshotLine = viewLine.Start.GetContainingLine();
            }
            else
            {
                state.SnapshotLine = state.SnapshotLine.Snapshot.GetLineFromLineNumber(state.SnapshotLine.LineNumber + 1);
            }
            return(owner.GetLineNumber(viewLine, state.SnapshotLine, ref customState.State));
        }
		protected override int? GetLineNumber(ITextViewLine viewLine, ref LineNumberState state) {
			if (owner == null)
				return null;
			CustomLineNumberState customState;
			if (state == null)
				state = customState = new CustomLineNumberState();
			else
				customState = (CustomLineNumberState)state;
			if (state.SnapshotLine == null || state.SnapshotLine.EndIncludingLineBreak != viewLine.Start)
				state.SnapshotLine = viewLine.Start.GetContainingLine();
			else
				state.SnapshotLine = state.SnapshotLine.Snapshot.GetLineFromLineNumber(state.SnapshotLine.LineNumber + 1);
			return owner.GetLineNumber(viewLine, state.SnapshotLine, ref customState.State);
		}