{{$diffBlobExcerptData := .DiffBlobExcerptData}}
{{$canCreateComment := and ctx.RootData.SignedUserID $diffBlobExcerptData.PullIssueIndex}}
{{if $.IsSplitStyle}}
	{{range $k, $line := $.section.Lines}}
	<tr class="{{.GetHTMLDiffLineType}}-code nl-{{$k}} ol-{{$k}} line-expanded" data-line-type="{{.GetHTMLDiffLineType}}">
		{{if eq .GetType 4}}
			<td class="lines-num lines-num-old">{{$line.RenderBlobExcerptButtons $.FileNameHash $diffBlobExcerptData}}</td>
			<td colspan="7" class="lines-code lines-code-old">
				{{- $inlineDiff := $.section.GetComputedInlineDiffFor $line ctx.Locale -}}
				{{- template "repo/diff/section_code" dict "diff" $inlineDiff -}}
			</td>
		{{else}}
			{{$inlineDiff := $.section.GetComputedInlineDiffFor $line ctx.Locale}}
			<td class="lines-num lines-num-old" data-line-num="{{if $line.LeftIdx}}{{$line.LeftIdx}}{{end}}"><span rel="{{if $line.LeftIdx}}diff-{{$.FileNameHash}}L{{$line.LeftIdx}}{{end}}"></span></td>
			<td class="lines-escape lines-escape-old">{{if $line.LeftIdx}}{{ctx.RenderUtils.RenderUnicodeEscapeToggleButton $inlineDiff.EscapeStatus}}{{end}}</td>
			<td class="lines-type-marker lines-type-marker-old">{{if $line.LeftIdx}}<span class="tw-font-mono" data-type-marker=""></span>{{end}}</td>
			<td class="lines-code lines-code-old">
				{{/* ATTENTION: BLOB-EXCERPT-COMMENT-RIGHT: here it intentionally use "right" side to comment, because the backend code depends on the assumption that the comment only happens on right side*/}}
				{{- if and $canCreateComment $line.RightIdx -}}
					<button type="button" aria-label="{{ctx.Locale.Tr "repo.diff.comment.add_line_comment"}}" class="ui primary button add-code-comment add-code-comment-right{{if (not $line.CanComment)}} tw-invisible{{end}}" data-side="right" data-idx="{{$line.RightIdx}}">
						{{- svg "octicon-plus" -}}
					</button>
				{{- end -}}
				{{- if $line.LeftIdx -}}
					{{- template "repo/diff/section_code" dict "diff" $inlineDiff -}}
				{{- else -}}
					<code class="code-inner"></code>
				{{- end -}}
			</td>
			<td class="lines-num lines-num-new" data-line-num="{{if $line.RightIdx}}{{$line.RightIdx}}{{end}}"><span rel="{{if $line.RightIdx}}diff-{{$.FileNameHash}}R{{$line.RightIdx}}{{end}}"></span></td>
			<td class="lines-escape lines-escape-new">{{if and $line.RightIdx}}{{ctx.RenderUtils.RenderUnicodeEscapeToggleButton $inlineDiff.EscapeStatus}}{{end}}</td>
			<td class="lines-type-marker lines-type-marker-new">{{if $line.RightIdx}}<span class="tw-font-mono" data-type-marker=""></span>{{end}}</td>
			<td class="lines-code lines-code-new">
				{{- if and $canCreateComment $line.RightIdx -}}
					<button type="button" aria-label="{{ctx.Locale.Tr "repo.diff.comment.add_line_comment"}}" class="ui primary button add-code-comment add-code-comment-right{{if (not $line.CanComment)}} tw-invisible{{end}}" data-side="right" data-idx="{{$line.RightIdx}}">
						{{- svg "octicon-plus" -}}
					</button>
				{{- end -}}
				{{- if $line.RightIdx -}}
					{{- template "repo/diff/section_code" dict "diff" $inlineDiff -}}
				{{- else -}}
					<code class="code-inner"></code>
				{{- end -}}
			</td>
		{{end}}
	</tr>
	{{if $line.Comments}}
		<tr class="add-comment" data-line-type="{{.GetHTMLDiffLineType}}">
			<td class="add-comment-left" colspan="4">
				{{if eq $line.GetCommentSide "previous"}}
					{{template "repo/diff/conversation" dict "." $ "comments" $line.Comments}}
				{{end}}
			</td>
			<td class="add-comment-right" colspan="4">
				{{if eq $line.GetCommentSide "proposed"}}
					{{template "repo/diff/conversation" dict "." $ "comments" $line.Comments}}
				{{end}}
			</td>
		</tr>
	{{end}}
	{{end}}
{{else}}
	{{range $k, $line := $.section.Lines}}
	<tr class="{{.GetHTMLDiffLineType}}-code nl-{{$k}} ol-{{$k}} line-expanded" data-line-type="{{.GetHTMLDiffLineType}}">
		{{if eq .GetType 4}}
			<td colspan="2" class="lines-num">{{$line.RenderBlobExcerptButtons $.FileNameHash $diffBlobExcerptData}}</td>
		{{else}}
			<td class="lines-num lines-num-old" data-line-num="{{if $line.LeftIdx}}{{$line.LeftIdx}}{{end}}"><span rel="{{if $line.LeftIdx}}diff-{{$.FileNameHash}}L{{$line.LeftIdx}}{{end}}"></span></td>
			<td class="lines-num lines-num-new" data-line-num="{{if $line.RightIdx}}{{$line.RightIdx}}{{end}}"><span rel="{{if $line.RightIdx}}diff-{{$.FileNameHash}}R{{$line.RightIdx}}{{end}}"></span></td>
		{{end}}
		{{$inlineDiff := $.section.GetComputedInlineDiffFor $line ctx.Locale}}
		<td class="lines-escape">{{ctx.RenderUtils.RenderUnicodeEscapeToggleButton $inlineDiff.EscapeStatus}}</td>
		<td class="lines-type-marker"><span class="tw-font-mono" data-type-marker="{{$line.GetLineTypeMarker}}"></span></td>
		<td class="lines-code{{if (not $line.RightIdx)}} lines-code-old{{end}}">
			{{- if and $canCreateComment -}}
				<button type="button" aria-label="{{ctx.Locale.Tr "repo.diff.comment.add_line_comment"}}" class="ui primary button add-code-comment add-code-comment-{{if $line.RightIdx}}right{{else}}left{{end}}{{if (not $line.CanComment)}} tw-invisible{{end}}" data-side="{{if $line.RightIdx}}right{{else}}left{{end}}" data-idx="{{if $line.RightIdx}}{{$line.RightIdx}}{{else}}{{$line.LeftIdx}}{{end}}">
					{{- svg "octicon-plus" -}}
				</button>
			{{- end -}}
			<code class="code-inner {{if $inlineDiff.EscapeStatus.Escaped}}has-escaped{{end}}">{{$inlineDiff.Content}}</code>
		</td>
	</tr>
	{{if $line.Comments}}
		<tr class="add-comment" data-line-type="{{.GetHTMLDiffLineType}}">
			<td class="add-comment-left add-comment-right" colspan="5">
				{{template "repo/diff/conversation" dict "." $ "comments" $line.Comments}}
			</td>
		</tr>
	{{end}}
	{{end}}
{{end}}
