Detailed changes
  
  
    
    @@ -1 +1 @@
-{"version":"0.2","language":"en","flagWords":[],"words":["crush","charmbracelet","lipgloss","bubbletea","textinput","Focusable","lsps","Sourcegraph","filepicker","imageorient","rasterx","oksvg","termenv","trashhalo","lucasb","nfnt","srwiley","Lanczos","fsext"]}
+{"flagWords":[],"words":["crush","charmbracelet","lipgloss","bubbletea","textinput","Focusable","lsps","Sourcegraph","filepicker","imageorient","rasterx","oksvg","termenv","trashhalo","lucasb","nfnt","srwiley","Lanczos","fsext","GROQ","alecthomas","Preproc","Emph","charmtone","Charple","Guac","diffview","Strikethrough","Unticked","uniseg","rivo"],"version":"0.2","language":"en"}
  
  
  
    
    @@ -163,4 +163,5 @@ func (app *App) Shutdown() {
 		}
 		cancel()
 	}
+	app.CoderAgent.CancelAll()
 }
  
  
  
    
    @@ -100,3 +100,23 @@ tasks:
       - for: sources
         cmd: echo && echo "------- {{.ITEM}} -------" && echo && cat {{.ITEM}}
     silent: true
+
+  test:print:yoffset:unified:infinite:
+    desc: Print golden files for debugging
+    method: none
+    sources:
+      - ./testdata/TestDiffViewYOffsetInfinite/Unified/*.golden
+    cmds:
+      - for: sources
+        cmd: echo && echo "------- {{.ITEM}} -------" && echo && cat {{.ITEM}}
+    silent: true
+
+  test:print:yoffset:split:infinite:
+    desc: Print golden files for debugging
+    method: none
+    sources:
+      - ./testdata/TestDiffViewYOffsetInfinite/Split/*.golden
+    cmds:
+      - for: sources
+        cmd: echo && echo "------- {{.ITEM}} -------" && echo && cat {{.ITEM}}
+    silent: true
  
  
  
    
    @@ -33,18 +33,19 @@ const (
 
 // DiffView represents a view for displaying differences between two files.
 type DiffView struct {
-	layout       layout
-	before       file
-	after        file
-	contextLines int
-	lineNumbers  bool
-	height       int
-	width        int
-	xOffset      int
-	yOffset      int
-	style        Style
-	tabWidth     int
-	chromaStyle  *chroma.Style
+	layout          layout
+	before          file
+	after           file
+	contextLines    int
+	lineNumbers     bool
+	height          int
+	width           int
+	xOffset         int
+	yOffset         int
+	infiniteYScroll bool
+	style           Style
+	tabWidth        int
+	chromaStyle     *chroma.Style
 
 	isComputed bool
 	err        error
@@ -53,6 +54,7 @@ type DiffView struct {
 
 	splitHunks []splitHunk
 
+	totalLines      int
 	codeWidth       int
 	fullCodeWidth   int  // with leading symbols
 	extraColOnAfter bool // add extra column on after panel
@@ -138,6 +140,12 @@ func (dv *DiffView) YOffset(yOffset int) *DiffView {
 	return dv
 }
 
+// InfiniteYScroll allows the YOffset to scroll beyond the last line.
+func (dv *DiffView) InfiniteYScroll(infiniteYScroll bool) *DiffView {
+	dv.infiniteYScroll = infiniteYScroll
+	return dv
+}
+
 // TabWidth sets the tab width. Only relevant for code that contains tabs, like
 // Go code.
 func (dv *DiffView) TabWidth(tabWidth int) *DiffView {
@@ -161,6 +169,8 @@ func (dv *DiffView) String() string {
 	dv.convertDiffToSplit()
 	dv.adjustStyles()
 	dv.detectNumDigits()
+	dv.detectTotalLines()
+	dv.preventInfiniteYScroll()
 
 	if dv.width <= 0 {
 		dv.detectCodeWidth()
@@ -251,6 +261,37 @@ func (dv *DiffView) detectNumDigits() {
 	}
 }
 
+func (dv *DiffView) detectTotalLines() {
+	dv.totalLines = 0
+
+	switch dv.layout {
+	case layoutUnified:
+		for _, h := range dv.unified.Hunks {
+			dv.totalLines += 1 + len(h.Lines)
+		}
+	case layoutSplit:
+		for _, h := range dv.splitHunks {
+			dv.totalLines += 1 + len(h.lines)
+		}
+	}
+}
+
+func (dv *DiffView) preventInfiniteYScroll() {
+	if dv.infiniteYScroll {
+		return
+	}
+
+	// clamp yOffset to prevent scrolling beyond the last line
+	if dv.height > 0 {
+		maxYOffset := max(0, dv.totalLines-dv.height)
+		dv.yOffset = min(dv.yOffset, maxYOffset)
+	} else {
+		// if no height limit, ensure yOffset doesn't exceed total lines
+		dv.yOffset = min(dv.yOffset, max(0, dv.totalLines-1))
+	}
+	dv.yOffset = max(0, dv.yOffset) // ensure yOffset is not negative
+}
+
 // detectCodeWidth calculates the maximum width of code lines in the diff view.
 func (dv *DiffView) detectCodeWidth() {
 	switch dv.layout {
@@ -321,23 +362,29 @@ func (dv *DiffView) renderUnified() string {
 
 	fullContentStyle := lipgloss.NewStyle().MaxWidth(dv.fullCodeWidth)
 	printedLines := -dv.yOffset
-
-	write := func(s string) {
-		if printedLines >= 0 {
-			b.WriteString(s)
-		}
+	shouldWrite := func() bool { return printedLines >= 0 }
+
+	getContent := func(in string, ls LineStyle) (content string, leadingEllipsis bool) {
+		content = strings.TrimSuffix(in, "\n")
+		content = dv.hightlightCode(content, ls.Code.GetBackground())
+		content = ansi.GraphemeWidth.Cut(content, dv.xOffset, len(content))
+		content = ansi.Truncate(content, dv.codeWidth, "…")
+		leadingEllipsis = dv.xOffset > 0 && strings.TrimSpace(content) != ""
+		return
 	}
 
 outer:
 	for i, h := range dv.unified.Hunks {
-		ls := dv.style.DividerLine
-		if dv.lineNumbers {
-			write(ls.LineNumber.Render(pad("…", dv.beforeNumDigits)))
-			write(ls.LineNumber.Render(pad("…", dv.afterNumDigits)))
+		if shouldWrite() {
+			ls := dv.style.DividerLine
+			if dv.lineNumbers {
+				b.WriteString(ls.LineNumber.Render(pad("…", dv.beforeNumDigits)))
+				b.WriteString(ls.LineNumber.Render(pad("…", dv.afterNumDigits)))
+			}
+			content := ansi.Truncate(dv.hunkLineFor(h), dv.fullCodeWidth, "…")
+			b.WriteString(ls.Code.Width(dv.fullCodeWidth).Render(content))
+			b.WriteString("\n")
 		}
-		content := ansi.Truncate(dv.hunkLineFor(h), dv.fullCodeWidth, "…")
-		write(ls.Code.Width(dv.fullCodeWidth).Render(content))
-		write("\n")
 		printedLines++
 
 		beforeLine := h.FromLine
@@ -349,80 +396,82 @@ outer:
 			isLastHunk := i+1 == len(dv.unified.Hunks)
 			isLastLine := j+1 == len(h.Lines)
 			if hasReachedHeight && (!isLastHunk || !isLastLine) {
-				ls := dv.lineStyleForType(l.Kind)
-				if dv.lineNumbers {
-					write(ls.LineNumber.Render(pad("…", dv.beforeNumDigits)))
-					write(ls.LineNumber.Render(pad("…", dv.afterNumDigits)))
+				if shouldWrite() {
+					ls := dv.lineStyleForType(l.Kind)
+					if dv.lineNumbers {
+						b.WriteString(ls.LineNumber.Render(pad("…", dv.beforeNumDigits)))
+						b.WriteString(ls.LineNumber.Render(pad("…", dv.afterNumDigits)))
+					}
+					b.WriteString(fullContentStyle.Render(
+						ls.Code.Width(dv.fullCodeWidth).Render("  …"),
+					))
+					b.WriteRune('\n')
 				}
-				write(fullContentStyle.Render(
-					ls.Code.Width(dv.fullCodeWidth).Render("  …"),
-				))
-				write("\n")
 				break outer
 			}
 
-			getContent := func(ls LineStyle) string {
-				content := strings.TrimSuffix(l.Content, "\n")
-				content = dv.hightlightCode(content, ls.Code.GetBackground())
-				content = ansi.GraphemeWidth.Cut(content, dv.xOffset, len(content))
-				content = ansi.Truncate(content, dv.codeWidth, "…")
-				return content
-			}
-
-			leadingEllipsis := dv.xOffset > 0 && strings.TrimSpace(content) != ""
-
 			switch l.Kind {
 			case udiff.Equal:
-				ls := dv.style.EqualLine
-				content := getContent(ls)
-				if dv.lineNumbers {
-					write(ls.LineNumber.Render(pad(beforeLine, dv.beforeNumDigits)))
-					write(ls.LineNumber.Render(pad(afterLine, dv.afterNumDigits)))
+				if shouldWrite() {
+					ls := dv.style.EqualLine
+					content, leadingEllipsis := getContent(l.Content, ls)
+					if dv.lineNumbers {
+						b.WriteString(ls.LineNumber.Render(pad(beforeLine, dv.beforeNumDigits)))
+						b.WriteString(ls.LineNumber.Render(pad(afterLine, dv.afterNumDigits)))
+					}
+					b.WriteString(fullContentStyle.Render(
+						ls.Code.Width(dv.fullCodeWidth).Render(ternary(leadingEllipsis, " …", "  ") + content),
+					))
 				}
-				write(fullContentStyle.Render(
-					ls.Code.Width(dv.fullCodeWidth).Render(ternary(leadingEllipsis, " …", "  ") + content),
-				))
 				beforeLine++
 				afterLine++
 			case udiff.Insert:
-				ls := dv.style.InsertLine
-				content := getContent(ls)
-				if dv.lineNumbers {
-					write(ls.LineNumber.Render(pad(" ", dv.beforeNumDigits)))
-					write(ls.LineNumber.Render(pad(afterLine, dv.afterNumDigits)))
+				if shouldWrite() {
+					ls := dv.style.InsertLine
+					content, leadingEllipsis := getContent(l.Content, ls)
+					if dv.lineNumbers {
+						b.WriteString(ls.LineNumber.Render(pad(" ", dv.beforeNumDigits)))
+						b.WriteString(ls.LineNumber.Render(pad(afterLine, dv.afterNumDigits)))
+					}
+					b.WriteString(fullContentStyle.Render(
+						ls.Symbol.Render(ternary(leadingEllipsis, "+…", "+ ")) +
+							ls.Code.Width(dv.codeWidth).Render(content),
+					))
 				}
-				write(fullContentStyle.Render(
-					ls.Symbol.Render(ternary(leadingEllipsis, "+…", "+ ")) +
-						ls.Code.Width(dv.codeWidth).Render(content),
-				))
 				afterLine++
 			case udiff.Delete:
-				ls := dv.style.DeleteLine
-				content := getContent(ls)
-				if dv.lineNumbers {
-					write(ls.LineNumber.Render(pad(beforeLine, dv.beforeNumDigits)))
-					write(ls.LineNumber.Render(pad(" ", dv.afterNumDigits)))
+				if shouldWrite() {
+					ls := dv.style.DeleteLine
+					content, leadingEllipsis := getContent(l.Content, ls)
+					if dv.lineNumbers {
+						b.WriteString(ls.LineNumber.Render(pad(beforeLine, dv.beforeNumDigits)))
+						b.WriteString(ls.LineNumber.Render(pad(" ", dv.afterNumDigits)))
+					}
+					b.WriteString(fullContentStyle.Render(
+						ls.Symbol.Render(ternary(leadingEllipsis, "-…", "- ")) +
+							ls.Code.Width(dv.codeWidth).Render(content),
+					))
 				}
-				write(fullContentStyle.Render(
-					ls.Symbol.Render(ternary(leadingEllipsis, "-…", "- ")) +
-						ls.Code.Width(dv.codeWidth).Render(content),
-				))
 				beforeLine++
 			}
-			write("\n")
+			if shouldWrite() {
+				b.WriteRune('\n')
+			}
 
 			printedLines++
 		}
 	}
 
 	for printedLines < dv.height {
-		ls := dv.style.MissingLine
-		if dv.lineNumbers {
-			write(ls.LineNumber.Render(pad(" ", dv.beforeNumDigits)))
-			write(ls.LineNumber.Render(pad(" ", dv.afterNumDigits)))
+		if shouldWrite() {
+			ls := dv.style.MissingLine
+			if dv.lineNumbers {
+				b.WriteString(ls.LineNumber.Render(pad(" ", dv.beforeNumDigits)))
+				b.WriteString(ls.LineNumber.Render(pad(" ", dv.afterNumDigits)))
+			}
+			b.WriteString(ls.Code.Width(dv.fullCodeWidth).Render("  "))
+			b.WriteRune('\n')
 		}
-		write(ls.Code.Width(dv.fullCodeWidth).Render("  "))
-		write("\n")
 		printedLines++
 	}
 
@@ -436,26 +485,32 @@ func (dv *DiffView) renderSplit() string {
 	beforeFullContentStyle := lipgloss.NewStyle().MaxWidth(dv.fullCodeWidth)
 	afterFullContentStyle := lipgloss.NewStyle().MaxWidth(dv.fullCodeWidth + btoi(dv.extraColOnAfter))
 	printedLines := -dv.yOffset
-
-	write := func(s string) {
-		if printedLines >= 0 {
-			b.WriteString(s)
-		}
+	shouldWrite := func() bool { return printedLines >= 0 }
+
+	getContent := func(in string, ls LineStyle) (content string, leadingEllipsis bool) {
+		content = strings.TrimSuffix(in, "\n")
+		content = dv.hightlightCode(content, ls.Code.GetBackground())
+		content = ansi.GraphemeWidth.Cut(content, dv.xOffset, len(content))
+		content = ansi.Truncate(content, dv.codeWidth, "…")
+		leadingEllipsis = dv.xOffset > 0 && strings.TrimSpace(content) != ""
+		return
 	}
 
 outer:
 	for i, h := range dv.splitHunks {
-		ls := dv.style.DividerLine
-		if dv.lineNumbers {
-			write(ls.LineNumber.Render(pad("…", dv.beforeNumDigits)))
-		}
-		content := ansi.Truncate(dv.hunkLineFor(dv.unified.Hunks[i]), dv.fullCodeWidth, "…")
-		write(ls.Code.Width(dv.fullCodeWidth).Render(content))
-		if dv.lineNumbers {
-			write(ls.LineNumber.Render(pad("…", dv.afterNumDigits)))
+		if shouldWrite() {
+			ls := dv.style.DividerLine
+			if dv.lineNumbers {
+				b.WriteString(ls.LineNumber.Render(pad("…", dv.beforeNumDigits)))
+			}
+			content := ansi.Truncate(dv.hunkLineFor(dv.unified.Hunks[i]), dv.fullCodeWidth, "…")
+			b.WriteString(ls.Code.Width(dv.fullCodeWidth).Render(content))
+			if dv.lineNumbers {
+				b.WriteString(ls.LineNumber.Render(pad("…", dv.afterNumDigits)))
+			}
+			b.WriteString(ls.Code.Width(dv.fullCodeWidth + btoi(dv.extraColOnAfter)).Render(" "))
+			b.WriteRune('\n')
 		}
-		write(ls.Code.Width(dv.fullCodeWidth + btoi(dv.extraColOnAfter)).Render(" "))
-		write("\n")
 		printedLines++
 
 		beforeLine := h.fromLine
@@ -467,126 +522,129 @@ outer:
 			isLastHunk := i+1 == len(dv.unified.Hunks)
 			isLastLine := j+1 == len(h.lines)
 			if hasReachedHeight && (!isLastHunk || !isLastLine) {
-				ls := dv.style.MissingLine
-				if l.before != nil {
-					ls = dv.lineStyleForType(l.before.Kind)
-				}
-				if dv.lineNumbers {
-					write(ls.LineNumber.Render(pad("…", dv.beforeNumDigits)))
-				}
-				write(beforeFullContentStyle.Render(
-					ls.Code.Width(dv.fullCodeWidth).Render("  …"),
-				))
-				ls = dv.style.MissingLine
-				if l.after != nil {
-					ls = dv.lineStyleForType(l.after.Kind)
+				if shouldWrite() {
+					ls := dv.style.MissingLine
+					if l.before != nil {
+						ls = dv.lineStyleForType(l.before.Kind)
+					}
+					if dv.lineNumbers {
+						b.WriteString(ls.LineNumber.Render(pad("…", dv.beforeNumDigits)))
+					}
+					b.WriteString(beforeFullContentStyle.Render(
+						ls.Code.Width(dv.fullCodeWidth).Render("  …"),
+					))
+					ls = dv.style.MissingLine
+					if l.after != nil {
+						ls = dv.lineStyleForType(l.after.Kind)
+					}
+					if dv.lineNumbers {
+						b.WriteString(ls.LineNumber.Render(pad("…", dv.afterNumDigits)))
+					}
+					b.WriteString(afterFullContentStyle.Render(
+						ls.Code.Width(dv.fullCodeWidth).Render("  …"),
+					))
+					b.WriteRune('\n')
 				}
-				if dv.lineNumbers {
-					write(ls.LineNumber.Render(pad("…", dv.afterNumDigits)))
-				}
-				write(afterFullContentStyle.Render(
-					ls.Code.Width(dv.fullCodeWidth).Render("  …"),
-				))
-				write("\n")
 				break outer
 			}
 
-			getContent := func(content string, ls LineStyle) string {
-				content = strings.TrimSuffix(content, "\n")
-				content = dv.hightlightCode(content, ls.Code.GetBackground())
-				content = ansi.GraphemeWidth.Cut(content, dv.xOffset, len(content))
-				content = ansi.Truncate(content, dv.codeWidth, "…")
-				return content
-			}
-			getLeadingEllipsis := func(content string) bool {
-				return dv.xOffset > 0 && strings.TrimSpace(content) != ""
-			}
-
 			switch {
 			case l.before == nil:
-				ls := dv.style.MissingLine
-				if dv.lineNumbers {
-					write(ls.LineNumber.Render(pad(" ", dv.beforeNumDigits)))
+				if shouldWrite() {
+					ls := dv.style.MissingLine
+					if dv.lineNumbers {
+						b.WriteString(ls.LineNumber.Render(pad(" ", dv.beforeNumDigits)))
+					}
+					b.WriteString(beforeFullContentStyle.Render(
+						ls.Code.Width(dv.fullCodeWidth).Render("  "),
+					))
 				}
-				write(beforeFullContentStyle.Render(
-					ls.Code.Width(dv.fullCodeWidth).Render("  "),
-				))
 			case l.before.Kind == udiff.Equal:
-				ls := dv.style.EqualLine
-				content := getContent(l.before.Content, ls)
-				leadingEllipsis := getLeadingEllipsis(content)
-				if dv.lineNumbers {
-					write(ls.LineNumber.Render(pad(beforeLine, dv.beforeNumDigits)))
+				if shouldWrite() {
+					ls := dv.style.EqualLine
+					content, leadingEllipsis := getContent(l.before.Content, ls)
+					if dv.lineNumbers {
+						b.WriteString(ls.LineNumber.Render(pad(beforeLine, dv.beforeNumDigits)))
+					}
+					b.WriteString(beforeFullContentStyle.Render(
+						ls.Code.Width(dv.fullCodeWidth).Render(ternary(leadingEllipsis, " …", "  ") + content),
+					))
 				}
-				write(beforeFullContentStyle.Render(
-					ls.Code.Width(dv.fullCodeWidth).Render(ternary(leadingEllipsis, " …", "  ") + content),
-				))
 				beforeLine++
 			case l.before.Kind == udiff.Delete:
-				ls := dv.style.DeleteLine
-				content := getContent(l.before.Content, ls)
-				leadingEllipsis := getLeadingEllipsis(content)
-				if dv.lineNumbers {
-					write(ls.LineNumber.Render(pad(beforeLine, dv.beforeNumDigits)))
+				if shouldWrite() {
+					ls := dv.style.DeleteLine
+					content, leadingEllipsis := getContent(l.before.Content, ls)
+					if dv.lineNumbers {
+						b.WriteString(ls.LineNumber.Render(pad(beforeLine, dv.beforeNumDigits)))
+					}
+					b.WriteString(beforeFullContentStyle.Render(
+						ls.Symbol.Render(ternary(leadingEllipsis, "-…", "- ")) +
+							ls.Code.Width(dv.codeWidth).Render(content),
+					))
 				}
-				write(beforeFullContentStyle.Render(
-					ls.Symbol.Render(ternary(leadingEllipsis, "-…", "- ")) +
-						ls.Code.Width(dv.codeWidth).Render(content),
-				))
 				beforeLine++
 			}
 
 			switch {
 			case l.after == nil:
-				ls := dv.style.MissingLine
-				if dv.lineNumbers {
-					write(ls.LineNumber.Render(pad(" ", dv.afterNumDigits)))
+				if shouldWrite() {
+					ls := dv.style.MissingLine
+					if dv.lineNumbers {
+						b.WriteString(ls.LineNumber.Render(pad(" ", dv.afterNumDigits)))
+					}
+					b.WriteString(afterFullContentStyle.Render(
+						ls.Code.Width(dv.fullCodeWidth + btoi(dv.extraColOnAfter)).Render("  "),
+					))
 				}
-				write(afterFullContentStyle.Render(
-					ls.Code.Width(dv.fullCodeWidth + btoi(dv.extraColOnAfter)).Render("  "),
-				))
 			case l.after.Kind == udiff.Equal:
-				ls := dv.style.EqualLine
-				content := getContent(l.after.Content, ls)
-				leadingEllipsis := getLeadingEllipsis(content)
-				if dv.lineNumbers {
-					write(ls.LineNumber.Render(pad(afterLine, dv.afterNumDigits)))
+				if shouldWrite() {
+					ls := dv.style.EqualLine
+					content, leadingEllipsis := getContent(l.after.Content, ls)
+					if dv.lineNumbers {
+						b.WriteString(ls.LineNumber.Render(pad(afterLine, dv.afterNumDigits)))
+					}
+					b.WriteString(afterFullContentStyle.Render(
+						ls.Code.Width(dv.fullCodeWidth + btoi(dv.extraColOnAfter)).Render(ternary(leadingEllipsis, " …", "  ") + content),
+					))
 				}
-				write(afterFullContentStyle.Render(
-					ls.Code.Width(dv.fullCodeWidth + btoi(dv.extraColOnAfter)).Render(ternary(leadingEllipsis, " …", "  ") + content),
-				))
 				afterLine++
 			case l.after.Kind == udiff.Insert:
-				ls := dv.style.InsertLine
-				content := getContent(l.after.Content, ls)
-				leadingEllipsis := getLeadingEllipsis(content)
-				if dv.lineNumbers {
-					write(ls.LineNumber.Render(pad(afterLine, dv.afterNumDigits)))
+				if shouldWrite() {
+					ls := dv.style.InsertLine
+					content, leadingEllipsis := getContent(l.after.Content, ls)
+					if dv.lineNumbers {
+						b.WriteString(ls.LineNumber.Render(pad(afterLine, dv.afterNumDigits)))
+					}
+					b.WriteString(afterFullContentStyle.Render(
+						ls.Symbol.Render(ternary(leadingEllipsis, "+…", "+ ")) +
+							ls.Code.Width(dv.codeWidth+btoi(dv.extraColOnAfter)).Render(content),
+					))
 				}
-				write(afterFullContentStyle.Render(
-					ls.Symbol.Render(ternary(leadingEllipsis, "+…", "+ ")) +
-						ls.Code.Width(dv.codeWidth+btoi(dv.extraColOnAfter)).Render(content),
-				))
 				afterLine++
 			}
 
-			write("\n")
+			if shouldWrite() {
+				b.WriteRune('\n')
+			}
 
 			printedLines++
 		}
 	}
 
 	for printedLines < dv.height {
-		ls := dv.style.MissingLine
-		if dv.lineNumbers {
-			write(ls.LineNumber.Render(pad(" ", dv.beforeNumDigits)))
-		}
-		write(ls.Code.Width(dv.fullCodeWidth).Render(" "))
-		if dv.lineNumbers {
-			write(ls.LineNumber.Render(pad(" ", dv.afterNumDigits)))
+		if shouldWrite() {
+			ls := dv.style.MissingLine
+			if dv.lineNumbers {
+				b.WriteString(ls.LineNumber.Render(pad(" ", dv.beforeNumDigits)))
+			}
+			b.WriteString(ls.Code.Width(dv.fullCodeWidth).Render(" "))
+			if dv.lineNumbers {
+				b.WriteString(ls.LineNumber.Render(pad(" ", dv.afterNumDigits)))
+			}
+			b.WriteString(ls.Code.Width(dv.fullCodeWidth + btoi(dv.extraColOnAfter)).Render(" "))
+			b.WriteRune('\n')
 		}
-		write(ls.Code.Width(dv.fullCodeWidth + btoi(dv.extraColOnAfter)).Render(" "))
-		write("\n")
 		printedLines++
 	}
 
  
  
  
    
    @@ -283,6 +283,33 @@ func TestDiffViewYOffset(t *testing.T) {
 	}
 }
 
+func TestDiffViewYOffsetInfinite(t *testing.T) {
+	for layoutName, layoutFunc := range LayoutFuncs {
+		t.Run(layoutName, func(t *testing.T) {
+			for yOffset := range 17 {
+				t.Run(fmt.Sprintf("YOffsetOf%02d", yOffset), func(t *testing.T) {
+					t.Parallel()
+
+					dv := diffview.New().
+						Before("main.go", TestMultipleHunksBefore).
+						After("main.go", TestMultipleHunksAfter).
+						Style(diffview.DefaultLightStyle()).
+						ChromaStyle(styles.Get("catppuccin-latte")).
+						Height(5).
+						YOffset(yOffset).
+						InfiniteYScroll(true)
+					dv = layoutFunc(dv)
+
+					output := dv.String()
+					golden.RequireEqual(t, []byte(output))
+
+					assertHeight(t, 5, output)
+				})
+			}
+		})
+	}
+}
+
 func assertLineWidth(t *testing.T, expected int, output string) {
 	var lineWidth int
 	for line := range strings.SplitSeq(output, "\n") {
  
  
  
    
    @@ -1,6 +1,6 @@
 [48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -5,5 +5,6 @@ [m[48;2;113;154;252m                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;76;79;105;48;2;241;239;239m[m[m[48;2;241;239;239m                                                  [m
-[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[m[48;2;241;239;239m                                                  [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;210;15;57;48;2;241;239;239munc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mmain[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                                      [m
 [48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m 8[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m-…[m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m   [m[38;2;76;79;105;48;2;255;235;238mfmt[m[38;2;76;79;105;48;2;255;235;238m.[m[38;2;30;102;245;48;2;255;235;238mPrintln[m[38;2;76;79;105;48;2;255;235;238m([m[38;2;64;160;43;48;2;255;235;238m"Hello, world!"[m[38;2;76;79;105;48;2;255;235;238m)[m[m[48;2;255;235;238m                   [m
 [48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m 8[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+…[m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m   [m[38;2;76;79;105;48;2;232;245;233mcontent[m[38;2;76;79;105;48;2;232;245;233m [m[1;38;2;4;165;229;48;2;232;245;233m:=[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;64;160;43;48;2;232;245;233m"Hello, world!"[m[m[48;2;232;245;233m                     [m
  
  
  
    
    @@ -1,6 +1,6 @@
 [48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -5,5 +5,6 @@ [m[48;2;113;154;252m                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;76;79;105;48;2;241;239;239m[m[m[48;2;241;239;239m                                                  [m
-[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[m[48;2;241;239;239m                                                  [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;210;15;57;48;2;241;239;239mnc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mmain[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                                       [m
 [48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m 8[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m-…[m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m  [m[38;2;76;79;105;48;2;255;235;238mfmt[m[38;2;76;79;105;48;2;255;235;238m.[m[38;2;30;102;245;48;2;255;235;238mPrintln[m[38;2;76;79;105;48;2;255;235;238m([m[38;2;64;160;43;48;2;255;235;238m"Hello, world!"[m[38;2;76;79;105;48;2;255;235;238m)[m[m[48;2;255;235;238m                    [m
 [48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m 8[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+…[m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m  [m[38;2;76;79;105;48;2;232;245;233mcontent[m[38;2;76;79;105;48;2;232;245;233m [m[1;38;2;4;165;229;48;2;232;245;233m:=[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;64;160;43;48;2;232;245;233m"Hello, world!"[m[m[48;2;232;245;233m                      [m
  
  
  
    
    @@ -1,6 +1,6 @@
 [48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -5,5 +5,6 @@ [m[48;2;113;154;252m                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;76;79;105;48;2;241;239;239m[m[m[48;2;241;239;239m                                                  [m
-[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[m[48;2;241;239;239m                                                  [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;210;15;57;48;2;241;239;239mc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mmain[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                                        [m
 [48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m 8[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m-…[m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m [m[38;2;76;79;105;48;2;255;235;238mfmt[m[38;2;76;79;105;48;2;255;235;238m.[m[38;2;30;102;245;48;2;255;235;238mPrintln[m[38;2;76;79;105;48;2;255;235;238m([m[38;2;64;160;43;48;2;255;235;238m"Hello, world!"[m[38;2;76;79;105;48;2;255;235;238m)[m[m[48;2;255;235;238m                     [m
 [48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m 8[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+…[m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m [m[38;2;76;79;105;48;2;232;245;233mcontent[m[38;2;76;79;105;48;2;232;245;233m [m[1;38;2;4;165;229;48;2;232;245;233m:=[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;64;160;43;48;2;232;245;233m"Hello, world!"[m[m[48;2;232;245;233m                       [m
  
  
  
    
    @@ -1,6 +1,6 @@
 [48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -5,5 +5,6 @@ [m[48;2;113;154;252m                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;76;79;105;48;2;241;239;239m[m[m[48;2;241;239;239m                                                  [m
-[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[m[48;2;241;239;239m                                                  [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;210;15;57;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mmain[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                                         [m
 [48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m 8[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m-…[m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238mfmt[m[38;2;76;79;105;48;2;255;235;238m.[m[38;2;30;102;245;48;2;255;235;238mPrintln[m[38;2;76;79;105;48;2;255;235;238m([m[38;2;64;160;43;48;2;255;235;238m"Hello, world!"[m[38;2;76;79;105;48;2;255;235;238m)[m[m[48;2;255;235;238m                      [m
 [48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m 8[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+…[m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233mcontent[m[38;2;76;79;105;48;2;232;245;233m [m[1;38;2;4;165;229;48;2;232;245;233m:=[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;64;160;43;48;2;232;245;233m"Hello, world!"[m[m[48;2;232;245;233m                        [m
  
  
  
    
    @@ -1,6 +1,6 @@
 [48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -5,5 +5,6 @@ [m[48;2;113;154;252m                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;76;79;105;48;2;241;239;239m[m[m[48;2;241;239;239m                                                  [m
-[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[m[48;2;241;239;239m                                                  [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;210;15;57;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;30;102;245;48;2;241;239;239mmain[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                                          [m
 [48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m 8[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m-…[m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238mmt[m[38;2;76;79;105;48;2;255;235;238m.[m[38;2;30;102;245;48;2;255;235;238mPrintln[m[38;2;76;79;105;48;2;255;235;238m([m[38;2;64;160;43;48;2;255;235;238m"Hello, world!"[m[38;2;76;79;105;48;2;255;235;238m)[m[m[48;2;255;235;238m                       [m
 [48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m 8[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+…[m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233montent[m[38;2;76;79;105;48;2;232;245;233m [m[1;38;2;4;165;229;48;2;232;245;233m:=[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;64;160;43;48;2;232;245;233m"Hello, world!"[m[m[48;2;232;245;233m                         [m
  
  
  
    
    @@ -1,6 +1,6 @@
 [48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -5,5 +5,6 @@ [m[48;2;113;154;252m                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;76;79;105;48;2;241;239;239m[m[m[48;2;241;239;239m                                                  [m
-[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[m[48;2;241;239;239m                                                  [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;210;15;57;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;30;102;245;48;2;241;239;239main[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                                           [m
 [48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m 8[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m-…[m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238mt[m[38;2;76;79;105;48;2;255;235;238m.[m[38;2;30;102;245;48;2;255;235;238mPrintln[m[38;2;76;79;105;48;2;255;235;238m([m[38;2;64;160;43;48;2;255;235;238m"Hello, world!"[m[38;2;76;79;105;48;2;255;235;238m)[m[m[48;2;255;235;238m                        [m
 [48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m 8[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+…[m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233mntent[m[38;2;76;79;105;48;2;232;245;233m [m[1;38;2;4;165;229;48;2;232;245;233m:=[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;64;160;43;48;2;232;245;233m"Hello, world!"[m[m[48;2;232;245;233m                          [m
  
  
  
    
    @@ -1,6 +1,6 @@
 [48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -5,5 +5,6 @@ [m[48;2;113;154;252m                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;76;79;105;48;2;241;239;239m[m[m[48;2;241;239;239m                                                  [m
-[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[m[48;2;241;239;239m                                                  [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;210;15;57;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;30;102;245;48;2;241;239;239min[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                                            [m
 [48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m 8[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m-…[m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m.[m[38;2;30;102;245;48;2;255;235;238mPrintln[m[38;2;76;79;105;48;2;255;235;238m([m[38;2;64;160;43;48;2;255;235;238m"Hello, world!"[m[38;2;76;79;105;48;2;255;235;238m)[m[m[48;2;255;235;238m                         [m
 [48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m 8[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+…[m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233mtent[m[38;2;76;79;105;48;2;232;245;233m [m[1;38;2;4;165;229;48;2;232;245;233m:=[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;64;160;43;48;2;232;245;233m"Hello, world!"[m[m[48;2;232;245;233m                           [m
  
  
  
    
    @@ -1,6 +1,6 @@
 [48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -5,5 +5,6 @@ [m[48;2;113;154;252m                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;76;79;105;48;2;241;239;239m[m[m[48;2;241;239;239m                                                  [m
-[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[m[48;2;241;239;239m                                                  [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;210;15;57;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;30;102;245;48;2;241;239;239mn[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                                             [m
 [48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m 8[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m-…[m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;30;102;245;48;2;255;235;238mPrintln[m[38;2;76;79;105;48;2;255;235;238m([m[38;2;64;160;43;48;2;255;235;238m"Hello, world!"[m[38;2;76;79;105;48;2;255;235;238m)[m[m[48;2;255;235;238m                          [m
 [48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m 8[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+…[m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233ment[m[38;2;76;79;105;48;2;232;245;233m [m[1;38;2;4;165;229;48;2;232;245;233m:=[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;64;160;43;48;2;232;245;233m"Hello, world!"[m[m[48;2;232;245;233m                            [m
  
  
  
    
    @@ -1,6 +1,6 @@
 [48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -5,5 +5,6 @@ [m[48;2;113;154;252m                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;76;79;105;48;2;241;239;239m[m[m[48;2;241;239;239m                                                  [m
-[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[m[48;2;241;239;239m                                                  [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;210;15;57;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;30;102;245;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                                              [m
 [48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m 8[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m-…[m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;30;102;245;48;2;255;235;238mrintln[m[38;2;76;79;105;48;2;255;235;238m([m[38;2;64;160;43;48;2;255;235;238m"Hello, world!"[m[38;2;76;79;105;48;2;255;235;238m)[m[m[48;2;255;235;238m                           [m
 [48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m 8[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+…[m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233mnt[m[38;2;76;79;105;48;2;232;245;233m [m[1;38;2;4;165;229;48;2;232;245;233m:=[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;64;160;43;48;2;232;245;233m"Hello, world!"[m[m[48;2;232;245;233m                             [m
  
  
  
    
    @@ -1,6 +1,6 @@
 [48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -5,5 +5,6 @@ [m[48;2;113;154;252m                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;76;79;105;48;2;241;239;239m[m[m[48;2;241;239;239m                                                  [m
-[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[m[48;2;241;239;239m                                                  [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;210;15;57;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;30;102;245;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m)[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                                               [m
 [48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m 8[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m-…[m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;30;102;245;48;2;255;235;238mintln[m[38;2;76;79;105;48;2;255;235;238m([m[38;2;64;160;43;48;2;255;235;238m"Hello, world!"[m[38;2;76;79;105;48;2;255;235;238m)[m[m[48;2;255;235;238m                            [m
 [48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m 8[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+…[m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233mt[m[38;2;76;79;105;48;2;232;245;233m [m[1;38;2;4;165;229;48;2;232;245;233m:=[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;64;160;43;48;2;232;245;233m"Hello, world!"[m[m[48;2;232;245;233m                              [m
  
  
  
    
    @@ -1,6 +1,6 @@
 [48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -5,5 +5,6 @@ [m[48;2;113;154;252m                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;76;79;105;48;2;241;239;239m[m[m[48;2;241;239;239m                                                  [m
-[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[m[48;2;241;239;239m                                                  [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;210;15;57;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;30;102;245;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                                                [m
 [48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m 8[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m-…[m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;30;102;245;48;2;255;235;238mntln[m[38;2;76;79;105;48;2;255;235;238m([m[38;2;64;160;43;48;2;255;235;238m"Hello, world!"[m[38;2;76;79;105;48;2;255;235;238m)[m[m[48;2;255;235;238m                             [m
 [48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m 8[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+…[m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233m [m[1;38;2;4;165;229;48;2;232;245;233m:=[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;64;160;43;48;2;232;245;233m"Hello, world!"[m[m[48;2;232;245;233m                               [m
  
  
  
    
    @@ -1,6 +1,6 @@
 [48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -5,5 +5,6 @@ [m[48;2;113;154;252m                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;76;79;105;48;2;241;239;239m[m[m[48;2;241;239;239m                                                  [m
-[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[m[48;2;241;239;239m                                                  [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;210;15;57;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;30;102;245;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                                                 [m
 [48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m 8[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m-…[m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;30;102;245;48;2;255;235;238mtln[m[38;2;76;79;105;48;2;255;235;238m([m[38;2;64;160;43;48;2;255;235;238m"Hello, world!"[m[38;2;76;79;105;48;2;255;235;238m)[m[m[48;2;255;235;238m                              [m
 [48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m 8[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+…[m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233m[m[1;38;2;4;165;229;48;2;232;245;233m:=[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;64;160;43;48;2;232;245;233m"Hello, world!"[m[m[48;2;232;245;233m                                [m
  
  
  
    
    @@ -1,6 +1,6 @@
 [48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -5,5 +5,6 @@ [m[48;2;113;154;252m                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;76;79;105;48;2;241;239;239m[m[m[48;2;241;239;239m                                                  [m
-[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[m[48;2;241;239;239m                                                  [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;210;15;57;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;30;102;245;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[m[48;2;241;239;239m                                                  [m
 [48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m 8[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m-…[m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;30;102;245;48;2;255;235;238mln[m[38;2;76;79;105;48;2;255;235;238m([m[38;2;64;160;43;48;2;255;235;238m"Hello, world!"[m[38;2;76;79;105;48;2;255;235;238m)[m[m[48;2;255;235;238m                               [m
 [48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m 8[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+…[m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233m[m[1;38;2;4;165;229;48;2;232;245;233m=[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;64;160;43;48;2;232;245;233m"Hello, world!"[m[m[48;2;232;245;233m                                 [m
  
  
  
    
    @@ -1,6 +1,6 @@
 [48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -5,5 +5,6 @@ [m[48;2;113;154;252m                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;76;79;105;48;2;241;239;239m[m[m[48;2;241;239;239m                                                  [m
-[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[m[48;2;241;239;239m                                                  [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;210;15;57;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;30;102;245;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[m[48;2;241;239;239m                                                  [m
 [48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m 8[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m-…[m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;30;102;245;48;2;255;235;238mn[m[38;2;76;79;105;48;2;255;235;238m([m[38;2;64;160;43;48;2;255;235;238m"Hello, world!"[m[38;2;76;79;105;48;2;255;235;238m)[m[m[48;2;255;235;238m                                [m
 [48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m 8[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+…[m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233m[m[1;38;2;4;165;229;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;64;160;43;48;2;232;245;233m"Hello, world!"[m[m[48;2;232;245;233m                                  [m
  
  
  
    
    @@ -1,6 +1,6 @@
 [48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -5,5 +5,6 @@ [m[48;2;113;154;252m                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;76;79;105;48;2;241;239;239m[m[m[48;2;241;239;239m                                                  [m
-[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[m[48;2;241;239;239m                                                  [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;210;15;57;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;30;102;245;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[m[48;2;241;239;239m                                                  [m
 [48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m 8[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m-…[m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;30;102;245;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m([m[38;2;64;160;43;48;2;255;235;238m"Hello, world!"[m[38;2;76;79;105;48;2;255;235;238m)[m[m[48;2;255;235;238m                                 [m
 [48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m 8[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+…[m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233m[m[1;38;2;4;165;229;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233m[m[38;2;64;160;43;48;2;232;245;233m"Hello, world!"[m[m[48;2;232;245;233m                                   [m
  
  
  
    
    @@ -1,6 +1,6 @@
 [48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -5,5 +5,6 @@ [m[48;2;113;154;252m                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;76;79;105;48;2;241;239;239m[m[m[48;2;241;239;239m                                                  [m
-[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[m[48;2;241;239;239m                                                  [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;210;15;57;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;30;102;245;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[m[48;2;241;239;239m                                                  [m
 [48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m 8[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m-…[m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;30;102;245;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;64;160;43;48;2;255;235;238m"Hello, world!"[m[38;2;76;79;105;48;2;255;235;238m)[m[m[48;2;255;235;238m                                  [m
 [48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m 8[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+…[m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233m[m[1;38;2;4;165;229;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233m[m[38;2;64;160;43;48;2;232;245;233mHello, world!"[m[m[48;2;232;245;233m                                    [m
  
  
  
    
    @@ -1,6 +1,6 @@
 [48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -5,5 +5,6 @@ [m[48;2;113;154;252m                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;76;79;105;48;2;241;239;239m[m[m[48;2;241;239;239m                                                  [m
-[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[m[48;2;241;239;239m                                                  [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;210;15;57;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;30;102;245;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[m[48;2;241;239;239m                                                  [m
 [48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m 8[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m-…[m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;30;102;245;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;64;160;43;48;2;255;235;238mHello, world!"[m[38;2;76;79;105;48;2;255;235;238m)[m[m[48;2;255;235;238m                                   [m
 [48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m 8[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+…[m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233m[m[1;38;2;4;165;229;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233m[m[38;2;64;160;43;48;2;232;245;233mello, world!"[m[m[48;2;232;245;233m                                     [m
  
  
  
    
    @@ -1,6 +1,6 @@
 [48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -5,5 +5,6 @@ [m[48;2;113;154;252m                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;76;79;105;48;2;241;239;239m[m[m[48;2;241;239;239m                                                  [m
-[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[m[48;2;241;239;239m                                                  [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;210;15;57;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;30;102;245;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[m[48;2;241;239;239m                                                  [m
 [48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m 8[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m-…[m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;30;102;245;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;64;160;43;48;2;255;235;238mello, world!"[m[38;2;76;79;105;48;2;255;235;238m)[m[m[48;2;255;235;238m                                    [m
 [48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m 8[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+…[m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233m[m[1;38;2;4;165;229;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233m[m[38;2;64;160;43;48;2;232;245;233mllo, world!"[m[m[48;2;232;245;233m                                      [m
  
  
  
    
    @@ -1,6 +1,6 @@
 [48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -5,5 +5,6 @@ [m[48;2;113;154;252m                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;76;79;105;48;2;241;239;239m[m[m[48;2;241;239;239m                                                  [m
-[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[m[48;2;241;239;239m                                                  [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;210;15;57;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;30;102;245;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[m[48;2;241;239;239m                                                  [m
 [48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m 8[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m-…[m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;30;102;245;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;64;160;43;48;2;255;235;238mllo, world!"[m[38;2;76;79;105;48;2;255;235;238m)[m[m[48;2;255;235;238m                                     [m
 [48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m 8[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+…[m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233m[m[1;38;2;4;165;229;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233m[m[38;2;64;160;43;48;2;232;245;233mlo, world!"[m[m[48;2;232;245;233m                                       [m
  
  
  
    
    @@ -1,6 +1,6 @@
 [48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -5,5 +5,6 @@ [m[48;2;113;154;252m                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;76;79;105;48;2;241;239;239m[m[m[48;2;241;239;239m                                                  [m
-[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[m[48;2;241;239;239m                                                  [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                  [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m …[38;2;210;15;57;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;30;102;245;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[38;2;76;79;105;48;2;241;239;239m[m[m[48;2;241;239;239m                                                  [m
 [48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m 8[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m-…[m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;30;102;245;48;2;255;235;238m[m[38;2;76;79;105;48;2;255;235;238m[m[38;2;64;160;43;48;2;255;235;238mlo, world!"[m[38;2;76;79;105;48;2;255;235;238m)[m[m[48;2;255;235;238m                                      [m
 [48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m 8[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+…[m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233m[m[1;38;2;4;165;229;48;2;232;245;233m[m[38;2;76;79;105;48;2;232;245;233m[m[38;2;64;160;43;48;2;232;245;233mo, world!"[m[m[48;2;232;245;233m                                        [m
  
  
  
    
    @@ -1,5 +1,5 @@
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m10[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m
 [48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m12[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m
  
  
  
    
    @@ -1,5 +1,5 @@
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m10[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m12[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m
  
  
  
    
    @@ -1,5 +1,5 @@
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m10[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m12[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m
  
  
  
    
    @@ -1,5 +1,5 @@
-[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m13[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m15[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m10[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m12[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m
  
  
  
    
    @@ -1,5 +1,5 @@
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m10[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m12[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m
  
  
  
    
    @@ -1,5 +1,5 @@
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m10[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m12[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m
  
  
  
    
    @@ -1,5 +1,5 @@
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m12[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m
 [48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m12[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m- [m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m    [m[38;2;136;57;239;48;2;255;235;238mreturn[m[38;2;76;79;105;48;2;255;235;238m [m[38;2;64;160;43;48;2;255;235;238m"Hello, world!"[m[m[48;2;255;235;238m                      [m
 [48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m13[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+ [m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m    [m[38;2;76;79;105;48;2;232;245;233mcontent[m[38;2;76;79;105;48;2;232;245;233m [m[1;38;2;4;165;229;48;2;232;245;233m:=[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;76;79;105;48;2;232;245;233mstrings[m[38;2;76;79;105;48;2;232;245;233m.[m[38;2;30;102;245;48;2;232;245;233mToUpper[m[38;2;76;79;105;48;2;232;245;233m([m[38;2;64;160;43;48;2;232;245;233m"Hello, World!"[m[38;2;76;79;105;48;2;232;245;233m)[m[m[48;2;232;245;233m [m
 [48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m14[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+ [m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m    [m[38;2;136;57;239;48;2;232;245;233mreturn[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;76;79;105;48;2;232;245;233mcontent[m[m[48;2;232;245;233m                              [m
-[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m13[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m15[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m13[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m15[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m
  
  
  
    
    @@ -1,5 +1,5 @@
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m12[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m
+[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m12[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m- [m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m    [m[38;2;136;57;239;48;2;255;235;238mreturn[m[38;2;76;79;105;48;2;255;235;238m [m[38;2;64;160;43;48;2;255;235;238m"Hello, world!"[m[m[48;2;255;235;238m                      [m
 [48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m13[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+ [m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m    [m[38;2;76;79;105;48;2;232;245;233mcontent[m[38;2;76;79;105;48;2;232;245;233m [m[1;38;2;4;165;229;48;2;232;245;233m:=[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;76;79;105;48;2;232;245;233mstrings[m[38;2;76;79;105;48;2;232;245;233m.[m[38;2;30;102;245;48;2;232;245;233mToUpper[m[38;2;76;79;105;48;2;232;245;233m([m[38;2;64;160;43;48;2;232;245;233m"Hello, World!"[m[38;2;76;79;105;48;2;232;245;233m)[m[m[48;2;232;245;233m [m
 [48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m14[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+ [m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m    [m[38;2;136;57;239;48;2;232;245;233mreturn[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;76;79;105;48;2;232;245;233mcontent[m[m[48;2;232;245;233m                              [m
-[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m13[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m15[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m13[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m15[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m
  
  
  
    
    @@ -1,5 +1,5 @@
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m12[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m
+[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m12[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m- [m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m    [m[38;2;136;57;239;48;2;255;235;238mreturn[m[38;2;76;79;105;48;2;255;235;238m [m[38;2;64;160;43;48;2;255;235;238m"Hello, world!"[m[m[48;2;255;235;238m                      [m
+[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m13[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+ [m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m    [m[38;2;76;79;105;48;2;232;245;233mcontent[m[38;2;76;79;105;48;2;232;245;233m [m[1;38;2;4;165;229;48;2;232;245;233m:=[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;76;79;105;48;2;232;245;233mstrings[m[38;2;76;79;105;48;2;232;245;233m.[m[38;2;30;102;245;48;2;232;245;233mToUpper[m[38;2;76;79;105;48;2;232;245;233m([m[38;2;64;160;43;48;2;232;245;233m"Hello, World!"[m[38;2;76;79;105;48;2;232;245;233m)[m[m[48;2;232;245;233m [m
 [48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m14[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+ [m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m    [m[38;2;136;57;239;48;2;232;245;233mreturn[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;76;79;105;48;2;232;245;233mcontent[m[m[48;2;232;245;233m                              [m
-[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m13[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m15[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m13[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m15[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m
  
  
  
    
    @@ -1,5 +1,5 @@
-[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m13[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m15[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m12[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m
+[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m12[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m- [m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m    [m[38;2;136;57;239;48;2;255;235;238mreturn[m[38;2;76;79;105;48;2;255;235;238m [m[38;2;64;160;43;48;2;255;235;238m"Hello, world!"[m[m[48;2;255;235;238m                      [m
+[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m13[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+ [m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m    [m[38;2;76;79;105;48;2;232;245;233mcontent[m[38;2;76;79;105;48;2;232;245;233m [m[1;38;2;4;165;229;48;2;232;245;233m:=[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;76;79;105;48;2;232;245;233mstrings[m[38;2;76;79;105;48;2;232;245;233m.[m[38;2;30;102;245;48;2;232;245;233mToUpper[m[38;2;76;79;105;48;2;232;245;233m([m[38;2;64;160;43;48;2;232;245;233m"Hello, World!"[m[38;2;76;79;105;48;2;232;245;233m)[m[m[48;2;232;245;233m [m
+[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m14[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+ [m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m    [m[38;2;136;57;239;48;2;232;245;233mreturn[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;76;79;105;48;2;232;245;233mcontent[m[m[48;2;232;245;233m                              [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m13[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m15[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m
  
  
  
    
    @@ -1,5 +1,5 @@
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
-[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m12[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m
+[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m12[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m- [m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m    [m[38;2;136;57;239;48;2;255;235;238mreturn[m[38;2;76;79;105;48;2;255;235;238m [m[38;2;64;160;43;48;2;255;235;238m"Hello, world!"[m[m[48;2;255;235;238m                      [m
+[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m13[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+ [m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m    [m[38;2;76;79;105;48;2;232;245;233mcontent[m[38;2;76;79;105;48;2;232;245;233m [m[1;38;2;4;165;229;48;2;232;245;233m:=[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;76;79;105;48;2;232;245;233mstrings[m[38;2;76;79;105;48;2;232;245;233m.[m[38;2;30;102;245;48;2;232;245;233mToUpper[m[38;2;76;79;105;48;2;232;245;233m([m[38;2;64;160;43;48;2;232;245;233m"Hello, World!"[m[38;2;76;79;105;48;2;232;245;233m)[m[m[48;2;232;245;233m [m
+[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m14[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+ [m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m    [m[38;2;136;57;239;48;2;232;245;233mreturn[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;76;79;105;48;2;232;245;233mcontent[m[m[48;2;232;245;233m                              [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m13[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m15[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -2,6 +2,7 @@ [m[48;2;113;154;252m                                [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m [m[48;2;113;154;252m                                                 [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 2[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 2[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 3[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;23;146;153;48;2;241;239;239mimport[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m([m[m[48;2;241;239;239m                                        [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 3[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;23;146;153;48;2;241;239;239mimport[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m([m[m[48;2;241;239;239m                                        [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 4[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m    [m[38;2;64;160;43;48;2;241;239;239m"fmt"[m[m[48;2;241;239;239m                                       [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 4[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m    [m[38;2;64;160;43;48;2;241;239;239m"fmt"[m[m[48;2;241;239;239m                                       [m
+[48;2;223;219;221m [m[48;2;223;219;221m …[m[48;2;223;219;221m [m[48;2;223;219;221m  …[m[48;2;223;219;221m                                               [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m …[m[48;2;200;230;201m [m[38;2;32;31;38;48;2;232;245;233m  …[m[48;2;232;245;233m                                               [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 2[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 2[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 3[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;23;146;153;48;2;241;239;239mimport[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m([m[m[48;2;241;239;239m                                        [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 3[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;23;146;153;48;2;241;239;239mimport[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m([m[m[48;2;241;239;239m                                        [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 4[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m    [m[38;2;64;160;43;48;2;241;239;239m"fmt"[m[m[48;2;241;239;239m                                       [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 4[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m    [m[38;2;64;160;43;48;2;241;239;239m"fmt"[m[m[48;2;241;239;239m                                       [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m 5[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+ [m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m    [m[38;2;64;160;43;48;2;232;245;233m"strings"[m[m[48;2;232;245;233m                                   [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m …[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  …[m[48;2;241;239;239m                                               [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m …[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  …[m[48;2;241;239;239m                                               [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 3[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;23;146;153;48;2;241;239;239mimport[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m([m[m[48;2;241;239;239m                                        [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 3[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;23;146;153;48;2;241;239;239mimport[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m([m[m[48;2;241;239;239m                                        [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 4[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m    [m[38;2;64;160;43;48;2;241;239;239m"fmt"[m[m[48;2;241;239;239m                                       [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 4[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m    [m[38;2;64;160;43;48;2;241;239;239m"fmt"[m[m[48;2;241;239;239m                                       [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m 5[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+ [m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m    [m[38;2;64;160;43;48;2;232;245;233m"strings"[m[m[48;2;232;245;233m                                   [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m)[m[m[48;2;241;239;239m                                               [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m)[m[m[48;2;241;239;239m                                               [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m …[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  …[m[48;2;241;239;239m                                               [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m …[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  …[m[48;2;241;239;239m                                               [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 4[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m    [m[38;2;64;160;43;48;2;241;239;239m"fmt"[m[m[48;2;241;239;239m                                       [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 4[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m    [m[38;2;64;160;43;48;2;241;239;239m"fmt"[m[m[48;2;241;239;239m                                       [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m 5[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+ [m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m    [m[38;2;64;160;43;48;2;232;245;233m"strings"[m[m[48;2;232;245;233m                                   [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m)[m[m[48;2;241;239;239m                                               [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m)[m[m[48;2;241;239;239m                                               [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m …[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  …[m[48;2;241;239;239m                                               [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m …[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  …[m[48;2;241;239;239m                                               [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m 5[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+ [m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m    [m[38;2;64;160;43;48;2;232;245;233m"strings"[m[m[48;2;232;245;233m                                   [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m)[m[m[48;2;241;239;239m                                               [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m)[m[m[48;2;241;239;239m                                               [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mmain[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                                   [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 8[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mmain[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                                   [m
+[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -9,5 +10,6 @@ [m[48;2;113;154;252m                               [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m [m[48;2;113;154;252m                                                 [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m)[m[m[48;2;241;239;239m                                               [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m)[m[m[48;2;241;239;239m                                               [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mmain[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                                   [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 8[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mmain[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                                   [m
+[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -9,5 +10,6 @@ [m[48;2;113;154;252m                               [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m [m[48;2;113;154;252m                                                 [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m …[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  …[m[48;2;241;239;239m                                               [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m …[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  …[m[48;2;241;239;239m                                               [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mmain[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                                   [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 8[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mmain[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                                   [m
+[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -9,5 +10,6 @@ [m[48;2;113;154;252m                               [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m [m[48;2;113;154;252m                                                 [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 9[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m10[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m …[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  …[m[48;2;241;239;239m                                               [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m …[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  …[m[48;2;241;239;239m                                               [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mmain[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                                   [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 8[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mmain[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                                   [m
+[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -9,5 +10,6 @@ [m[48;2;113;154;252m                               [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m [m[48;2;113;154;252m                                                 [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 9[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m10[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m10[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m …[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  …[m[48;2;241;239;239m                                               [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m …[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  …[m[48;2;241;239;239m                                               [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -9,5 +10,6 @@ [m[48;2;113;154;252m                               [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m [m[48;2;113;154;252m                                                 [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 9[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m10[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m10[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m12[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m
+[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m …[m[48;2;255;205;210m [m[38;2;32;31;38;48;2;255;235;238m  …[m[48;2;255;235;238m                                               [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m …[m[48;2;200;230;201m [m[38;2;32;31;38;48;2;232;245;233m  …[m[48;2;232;245;233m                                               [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 9[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m10[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m10[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m12[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m10[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m12[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m12[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m
  
  
  
    
    @@ -0,0 +1,5 @@
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m14[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+ [m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m    [m[38;2;136;57;239;48;2;232;245;233mreturn[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;76;79;105;48;2;232;245;233mcontent[m[m[48;2;232;245;233m                              [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m13[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m15[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m13[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m15[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m                                                 [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -2,6 +2,7 @@ [m[48;2;113;154;252m                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 2[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 2[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 3[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 3[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;23;146;153;48;2;241;239;239mimport[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m([m[m[48;2;241;239;239m                                        [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 4[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 4[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m    [m[38;2;64;160;43;48;2;241;239;239m"fmt"[m[m[48;2;241;239;239m                                       [m
+[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m …[m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m …[m[48;2;200;230;201m [m[38;2;32;31;38;48;2;232;245;233m  …[m[48;2;232;245;233m                                               [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 2[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 2[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 3[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 3[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;23;146;153;48;2;241;239;239mimport[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m([m[m[48;2;241;239;239m                                        [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 4[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 4[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m    [m[38;2;64;160;43;48;2;241;239;239m"fmt"[m[m[48;2;241;239;239m                                       [m
+[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m 5[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+ [m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m    [m[38;2;64;160;43;48;2;232;245;233m"strings"[m[m[48;2;232;245;233m                                   [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m …[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m …[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  …[m[48;2;241;239;239m                                               [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 3[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 3[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;23;146;153;48;2;241;239;239mimport[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m([m[m[48;2;241;239;239m                                        [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 4[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 4[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m    [m[38;2;64;160;43;48;2;241;239;239m"fmt"[m[m[48;2;241;239;239m                                       [m
+[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m 5[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+ [m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m    [m[38;2;64;160;43;48;2;232;245;233m"strings"[m[m[48;2;232;245;233m                                   [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m)[m[m[48;2;241;239;239m                                               [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m …[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m …[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  …[m[48;2;241;239;239m                                               [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 4[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 4[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m    [m[38;2;64;160;43;48;2;241;239;239m"fmt"[m[m[48;2;241;239;239m                                       [m
+[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m 5[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+ [m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m    [m[38;2;64;160;43;48;2;232;245;233m"strings"[m[m[48;2;232;245;233m                                   [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m)[m[m[48;2;241;239;239m                                               [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m …[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m …[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  …[m[48;2;241;239;239m                                               [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m 5[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+ [m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m    [m[38;2;64;160;43;48;2;232;245;233m"strings"[m[m[48;2;232;245;233m                                   [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m)[m[m[48;2;241;239;239m                                               [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 8[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mmain[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                                   [m
+[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -9,5 +10,6 @@ [m[48;2;113;154;252m                               [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 5[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m)[m[m[48;2;241;239;239m                                               [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 8[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mmain[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                                   [m
+[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -9,5 +10,6 @@ [m[48;2;113;154;252m                               [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m …[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m …[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  …[m[48;2;241;239;239m                                               [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 6[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 8[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mmain[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                                   [m
+[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -9,5 +10,6 @@ [m[48;2;113;154;252m                               [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 9[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m10[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m …[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m …[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  …[m[48;2;241;239;239m                                               [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 7[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 8[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mmain[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                                   [m
+[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -9,5 +10,6 @@ [m[48;2;113;154;252m                               [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 9[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m10[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m10[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m …[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m …[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  …[m[48;2;241;239;239m                                               [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[48;2;71;118;255m [m[38;2;77;76;87;48;2;71;118;255m …[m[48;2;71;118;255m [m[38;2;96;95;107;48;2;113;154;252m  @@ -9,5 +10,6 @@ [m[48;2;113;154;252m                               [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 9[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m10[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m10[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m12[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m
+[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m …[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m …[m[48;2;255;205;210m [m[38;2;32;31;38;48;2;255;235;238m  …[m[48;2;255;235;238m                                               [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m 9[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m10[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m10[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m12[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m
+[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m12[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m- [m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m    [m[38;2;136;57;239;48;2;255;235;238mreturn[m[38;2;76;79;105;48;2;255;235;238m [m[38;2;64;160;43;48;2;255;235;238m"Hello, world!"[m[m[48;2;255;235;238m                      [m
+[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m …[m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m …[m[48;2;200;230;201m [m[38;2;32;31;38;48;2;232;245;233m  …[m[48;2;232;245;233m                                               [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m10[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [m[48;2;241;239;239m                                                [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m12[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m
+[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m12[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m- [m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m    [m[38;2;136;57;239;48;2;255;235;238mreturn[m[38;2;76;79;105;48;2;255;235;238m [m[38;2;64;160;43;48;2;255;235;238m"Hello, world!"[m[m[48;2;255;235;238m                      [m
+[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m13[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+ [m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m    [m[38;2;76;79;105;48;2;232;245;233mcontent[m[38;2;76;79;105;48;2;232;245;233m [m[1;38;2;4;165;229;48;2;232;245;233m:=[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;76;79;105;48;2;232;245;233mstrings[m[38;2;76;79;105;48;2;232;245;233m.[m[38;2;30;102;245;48;2;232;245;233mToUpper[m[38;2;76;79;105;48;2;232;245;233m([m[38;2;64;160;43;48;2;232;245;233m"Hello, World!"[m[38;2;76;79;105;48;2;232;245;233m)[m[m[48;2;232;245;233m [m
+[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m …[m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m …[m[48;2;200;230;201m [m[38;2;32;31;38;48;2;232;245;233m  …[m[48;2;232;245;233m                                               [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m11[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m12[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;210;15;57;48;2;241;239;239mfunc[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;30;102;245;48;2;241;239;239mgetContent[m[38;2;76;79;105;48;2;241;239;239m()[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;210;15;57;48;2;241;239;239mstring[m[38;2;76;79;105;48;2;241;239;239m [m[38;2;76;79;105;48;2;241;239;239m{[m[m[48;2;241;239;239m                      [m
+[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m12[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m- [m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m    [m[38;2;136;57;239;48;2;255;235;238mreturn[m[38;2;76;79;105;48;2;255;235;238m [m[38;2;64;160;43;48;2;255;235;238m"Hello, world!"[m[m[48;2;255;235;238m                      [m
+[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m13[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+ [m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m    [m[38;2;76;79;105;48;2;232;245;233mcontent[m[38;2;76;79;105;48;2;232;245;233m [m[1;38;2;4;165;229;48;2;232;245;233m:=[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;76;79;105;48;2;232;245;233mstrings[m[38;2;76;79;105;48;2;232;245;233m.[m[38;2;30;102;245;48;2;232;245;233mToUpper[m[38;2;76;79;105;48;2;232;245;233m([m[38;2;64;160;43;48;2;232;245;233m"Hello, World!"[m[38;2;76;79;105;48;2;232;245;233m)[m[m[48;2;232;245;233m [m
+[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m14[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+ [m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m    [m[38;2;136;57;239;48;2;232;245;233mreturn[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;76;79;105;48;2;232;245;233mcontent[m[m[48;2;232;245;233m                              [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m13[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m15[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m12[m[48;2;255;205;210m [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;205;210m  [m[48;2;255;205;210m [m[38;2;255;56;139;48;2;255;235;238m- [m[38;2;32;31;38;48;2;255;235;238m[38;2;76;79;105;48;2;255;235;238m    [m[38;2;136;57;239;48;2;255;235;238mreturn[m[38;2;76;79;105;48;2;255;235;238m [m[38;2;64;160;43;48;2;255;235;238m"Hello, world!"[m[m[48;2;255;235;238m                      [m
+[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m13[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+ [m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m    [m[38;2;76;79;105;48;2;232;245;233mcontent[m[38;2;76;79;105;48;2;232;245;233m [m[1;38;2;4;165;229;48;2;232;245;233m:=[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;76;79;105;48;2;232;245;233mstrings[m[38;2;76;79;105;48;2;232;245;233m.[m[38;2;30;102;245;48;2;232;245;233mToUpper[m[38;2;76;79;105;48;2;232;245;233m([m[38;2;64;160;43;48;2;232;245;233m"Hello, World!"[m[38;2;76;79;105;48;2;232;245;233m)[m[m[48;2;232;245;233m [m
+[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m14[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+ [m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m    [m[38;2;136;57;239;48;2;232;245;233mreturn[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;76;79;105;48;2;232;245;233mcontent[m[m[48;2;232;245;233m                              [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m13[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m15[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m13[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+ [m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m    [m[38;2;76;79;105;48;2;232;245;233mcontent[m[38;2;76;79;105;48;2;232;245;233m [m[1;38;2;4;165;229;48;2;232;245;233m:=[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;76;79;105;48;2;232;245;233mstrings[m[38;2;76;79;105;48;2;232;245;233m.[m[38;2;30;102;245;48;2;232;245;233mToUpper[m[38;2;76;79;105;48;2;232;245;233m([m[38;2;64;160;43;48;2;232;245;233m"Hello, World!"[m[38;2;76;79;105;48;2;232;245;233m)[m[m[48;2;232;245;233m [m
+[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m14[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+ [m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m    [m[38;2;136;57;239;48;2;232;245;233mreturn[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;76;79;105;48;2;232;245;233mcontent[m[m[48;2;232;245;233m                              [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m13[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m15[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m  [m[48;2;200;230;201m [m[48;2;200;230;201m [m[38;2;10;220;217;48;2;200;230;201m14[m[48;2;200;230;201m [m[38;2;10;220;217;48;2;232;245;233m+ [m[38;2;32;31;38;48;2;232;245;233m[38;2;76;79;105;48;2;232;245;233m    [m[38;2;136;57;239;48;2;232;245;233mreturn[m[38;2;76;79;105;48;2;232;245;233m [m[38;2;76;79;105;48;2;232;245;233mcontent[m[m[48;2;232;245;233m                              [m
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m13[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m15[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m13[m[48;2;223;219;221m [m[48;2;223;219;221m [m[38;2;58;57;67;48;2;223;219;221m15[m[48;2;223;219;221m [m[38;2;32;31;38;48;2;241;239;239m  [38;2;76;79;105;48;2;241;239;239m}[m[m[48;2;241;239;239m                                               [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
  
  
  
    
    @@ -0,0 +1,5 @@
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
+[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m [m[48;2;223;219;221m  [m[48;2;223;219;221m                                                [m
  
  
  
    
    @@ -50,6 +50,7 @@ type Service interface {
 	Model() models.Model
 	Run(ctx context.Context, sessionID string, content string, attachments ...message.Attachment) (<-chan AgentEvent, error)
 	Cancel(sessionID string)
+	CancelAll()
 	IsSessionBusy(sessionID string) bool
 	IsBusy() bool
 	Update(agentName config.AgentName, modelID models.ModelID) (models.Model, error)
@@ -698,6 +699,13 @@ func (a *agent) Summarize(ctx context.Context, sessionID string) error {
 	return nil
 }
 
+func (a *agent) CancelAll() {
+	a.activeRequests.Range(func(key, value any) bool {
+		a.Cancel(key.(string)) // key is sessionID
+		return true
+	})
+}
+
 func createAgentProvider(agentName config.AgentName) (provider.Provider, error) {
 	cfg := config.Get()
 	agentConfig, ok := cfg.Agents[agentName]
  
  
  
    
    @@ -30,10 +30,6 @@ You are operating as and within the Crush CLI, a terminal-based agentic coding a
 You can:
 - Receive user prompts, project context, and files.
 - Stream responses and emit function calls (e.g., shell commands, code edits).
-- Apply patches, run commands, and manage user approvals based on policy.
-- Work inside a sandboxed, git-backed workspace with rollback support.
-- Log telemetry so sessions can be replayed or inspected later.
-- More details on your functionality are available at "crush --help"
 
 
 You are an agent - please keep going until the user's query is completely resolved, before ending your turn and yielding back to the user. Only terminate your turn when you are sure that the problem is solved. If you are not sure about file content or codebase structure pertaining to the user's request, use your tools to read files and gather the relevant information: do NOT guess or make up an answer.
@@ -64,17 +60,19 @@ You MUST adhere to the following criteria when executing the task:
 - If completing the user's task DOES NOT require writing or modifying files (e.g., the user asks a question about the code base):
     - Respond in a friendly tune as a remote teammate, who is knowledgeable, capable and eager to help with coding.
 - When your task involves writing or modifying files:
-    - Do NOT tell the user to "save the file" or "copy the code into a file" if you already created or modified the file using "apply_patch". Instead, reference the file as already saved.
+    - Do NOT tell the user to "save the file" or "copy the code into a file" if you already created or modified the file using "edit/write". Instead, reference the file as already saved.
     - Do NOT show the full contents of large files you have already written, unless the user explicitly asks for them.
 - When doing things with paths, always use use the full path, if the working directory is /abc/xyz  and you want to edit the file abc.go in the working dir refer to it as /abc/xyz/abc.go.
 - If you send a path not including the working dir, the working dir will be prepended to it.
 - Remember the user does not see the full output of tools
+- NEVER use emojis in your responses
 `
 
 const baseAnthropicCoderPrompt = `You are Crush, an interactive CLI tool that helps users with software engineering tasks. Use the instructions below and the tools available to you to assist the user.
 
 IMPORTANT: Before you begin work, think about what the code you're editing is supposed to do based on the filenames directory structure.
 
+
 # Memory
 If the current working directory contains a file called CRUSH.md, it will be automatically added to your context. This file serves multiple purposes:
 1. Storing frequently used bash commands (build, test, lint, etc.) so you can use them without searching each time
@@ -131,7 +129,7 @@ assistant: src/foo.c
 
 <example>
 user: write tests for new feature
-assistant: [uses grep and glob search tools to find where similar tests are defined, uses concurrent read file tool use blocks in one tool call to read relevant files at the same time, uses edit/patch file tool to write new tests]
+assistant: [uses grep and glob search tools to find where similar tests are defined, uses concurrent read file tool use blocks in one tool call to read relevant files at the same time, uses edit file tool to write new tests]
 </example>
 
 # Proactiveness
@@ -165,6 +163,8 @@ NEVER commit changes unless the user explicitly asks you to. It is VERY IMPORTAN
 - If you intend to call multiple tools and there are no dependencies between the calls, make all of the independent calls in parallel.
 - IMPORTANT: The user does not see the full output of the tool responses, so if you need the output of the tool for the response make sure to summarize it for the user.
 
+VERY IMPORTANT NEVER use emojis in your responses.
+
 You MUST answer concisely with fewer than 4 lines of text (not including tool use or code generation), unless user asks for detail.`
 
 func getEnvironmentInfo() string {
  
  
  
    
    @@ -36,6 +36,7 @@ const (
 	DefaultTimeout  = 1 * 60 * 1000  // 1 minutes in milliseconds
 	MaxTimeout      = 10 * 60 * 1000 // 10 minutes in milliseconds
 	MaxOutputLength = 30000
+	BashNoOutput    = "no output"
 )
 
 var bannedCommands = []string{
@@ -321,7 +322,7 @@ func (b *bashTool) Run(ctx context.Context, call ToolCall) (ToolResponse, error)
 		EndTime:   time.Now().UnixMilli(),
 	}
 	if stdout == "" {
-		return WithResponseMetadata(NewTextResponse("no output"), metadata), nil
+		return WithResponseMetadata(NewTextResponse(BashNoOutput), metadata), nil
 	}
 	return WithResponseMetadata(NewTextResponse(stdout), metadata), nil
 }
  
  
  
    
    @@ -272,7 +272,7 @@ func (m *messageListCmp) findAssistantMessageAndToolCalls(items []util.Model, me
 				assistantIndex = i
 			}
 		} else if tc, ok := item.(messages.ToolCallCmp); ok {
-			if tc.ParentMessageId() == messageID {
+			if tc.ParentMessageID() == messageID {
 				toolCalls[i] = tc
 			}
 		}
@@ -295,9 +295,17 @@ func (m *messageListCmp) updateAssistantMessageContent(msg message.Message, assi
 			assistantIndex,
 			messages.NewMessageCmp(
 				msg,
-				messages.WithLastUserMessageTime(time.Unix(m.lastUserMessageTime, 0)),
 			),
 		)
+
+		if msg.FinishPart() != nil && msg.FinishPart().Reason == message.FinishReasonEndTurn {
+			m.listCmp.AppendItem(
+				messages.NewAssistantSection(
+					msg,
+					time.Unix(m.lastUserMessageTime, 0),
+				),
+			)
+		}
 	} else if hasToolCallsOnly {
 		m.listCmp.DeleteItem(assistantIndex)
 	}
@@ -347,7 +355,6 @@ func (m *messageListCmp) handleNewAssistantMessage(msg message.Message) tea.Cmd
 		cmd := m.listCmp.AppendItem(
 			messages.NewMessageCmp(
 				msg,
-				messages.WithLastUserMessageTime(time.Unix(m.lastUserMessageTime, 0)),
 			),
 		)
 		cmds = append(cmds, cmd)
@@ -412,6 +419,9 @@ func (m *messageListCmp) convertMessagesToUI(sessionMessages []message.Message,
 			uiMessages = append(uiMessages, messages.NewMessageCmp(msg))
 		case message.Assistant:
 			uiMessages = append(uiMessages, m.convertAssistantMessage(msg, toolResultMap)...)
+			if msg.FinishPart() != nil && msg.FinishPart().Reason == message.FinishReasonEndTurn {
+				uiMessages = append(uiMessages, messages.NewAssistantSection(msg, time.Unix(m.lastUserMessageTime, 0)))
+			}
 		}
 	}
 
@@ -428,7 +438,6 @@ func (m *messageListCmp) convertAssistantMessage(msg message.Message, toolResult
 			uiMessages,
 			messages.NewMessageCmp(
 				msg,
-				messages.WithLastUserMessageTime(time.Unix(m.lastUserMessageTime, 0)),
 			),
 		)
 	}
  
  
  
    
    @@ -8,13 +8,14 @@ import (
 
 	"github.com/charmbracelet/bubbles/v2/spinner"
 	tea "github.com/charmbracelet/bubbletea/v2"
-	"github.com/charmbracelet/crush/internal/llm/models"
 	"github.com/charmbracelet/lipgloss/v2"
 
+	"github.com/charmbracelet/crush/internal/llm/models"
 	"github.com/charmbracelet/crush/internal/message"
 	"github.com/charmbracelet/crush/internal/tui/components/anim"
 	"github.com/charmbracelet/crush/internal/tui/components/core"
 	"github.com/charmbracelet/crush/internal/tui/components/core/layout"
+	"github.com/charmbracelet/crush/internal/tui/components/core/list"
 	"github.com/charmbracelet/crush/internal/tui/styles"
 	"github.com/charmbracelet/crush/internal/tui/util"
 )
@@ -37,32 +38,17 @@ type messageCmp struct {
 	focused bool // Focus state for border styling
 
 	// Core message data and state
-	message             message.Message // The underlying message content
-	spinning            bool            // Whether to show loading animation
-	anim                util.Model      // Animation component for loading states
-	lastUserMessageTime time.Time       // Used for calculating response duration
-}
-
-// MessageOption provides functional options for configuring message components
-type MessageOption func(*messageCmp)
-
-// WithLastUserMessageTime sets the timestamp of the last user message
-// for calculating assistant response duration
-func WithLastUserMessageTime(t time.Time) MessageOption {
-	return func(m *messageCmp) {
-		m.lastUserMessageTime = t
-	}
+	message  message.Message // The underlying message content
+	spinning bool            // Whether to show loading animation
+	anim     util.Model      // Animation component for loading states
 }
 
 // NewMessageCmp creates a new message component with the given message and options
-func NewMessageCmp(msg message.Message, opts ...MessageOption) MessageCmp {
+func NewMessageCmp(msg message.Message) MessageCmp {
 	m := &messageCmp{
 		message: msg,
 		anim:    anim.New(15, ""),
 	}
-	for _, opt := range opts {
-		opt(m)
-	}
 	return m
 }
 
@@ -145,32 +131,10 @@ func (msg *messageCmp) style() lipgloss.Style {
 // renderAssistantMessage renders assistant messages with optional footer information.
 // Shows model name, response time, and finish reason when the message is complete.
 func (m *messageCmp) renderAssistantMessage() string {
-	t := styles.CurrentTheme()
 	parts := []string{
 		m.markdownContent(),
 	}
 
-	finished := m.message.IsFinished()
-	finishData := m.message.FinishPart()
-	// Only show the footer if the message is not a tool call
-	if finished && finishData.Reason != message.FinishReasonToolUse {
-		infoMsg := ""
-		switch finishData.Reason {
-		case message.FinishReasonEndTurn:
-			finishTime := time.Unix(finishData.Time, 0)
-			duration := finishTime.Sub(m.lastUserMessageTime)
-			infoMsg = duration.String()
-		case message.FinishReasonCanceled:
-			infoMsg = "canceled"
-		case message.FinishReasonError:
-			infoMsg = "error"
-		case message.FinishReasonPermissionDenied:
-			infoMsg = "permission denied"
-		}
-		assistant := t.S().Muted.Render(fmt.Sprintf("%s %s (%s)", styles.ModelIcon, models.SupportedModels[m.message.Model].Name, infoMsg))
-		parts = append(parts, core.Section(assistant, m.textWidth()))
-	}
-
 	joined := lipgloss.JoinVertical(lipgloss.Left, parts...)
 	return m.style().Render(joined)
 }
@@ -200,7 +164,7 @@ func (m *messageCmp) renderUserMessage() string {
 		parts = append(parts, "", strings.Join(attachments, ""))
 	}
 	joined := lipgloss.JoinVertical(lipgloss.Left, parts...)
-	return m.style().MarginBottom(1).Render(joined)
+	return m.style().Render(joined)
 }
 
 // toMarkdown converts text content to rendered markdown using the configured renderer
@@ -225,7 +189,7 @@ func (m *messageCmp) markdownContent() string {
 		} else if finished && content == "" && finishedData.Reason == message.FinishReasonEndTurn {
 			// Sometimes the LLMs respond with no content when they think the previous tool result
 			//  provides the requested question
-			content = "*Finished without output*"
+			content = ""
 		} else if finished && content == "" && finishedData.Reason == message.FinishReasonCanceled {
 			content = "*Canceled*"
 		}
@@ -287,3 +251,59 @@ func (m *messageCmp) SetSize(width int, height int) tea.Cmd {
 func (m *messageCmp) Spinning() bool {
 	return m.spinning
 }
+
+type AssistantSection interface {
+	util.Model
+	layout.Sizeable
+	list.SectionHeader
+}
+type assistantSectionModel struct {
+	width               int
+	message             message.Message
+	lastUserMessageTime time.Time
+}
+
+func NewAssistantSection(message message.Message, lastUserMessageTime time.Time) AssistantSection {
+	return &assistantSectionModel{
+		width:               0,
+		message:             message,
+		lastUserMessageTime: lastUserMessageTime,
+	}
+}
+
+func (m *assistantSectionModel) Init() tea.Cmd {
+	return nil
+}
+
+func (m *assistantSectionModel) Update(tea.Msg) (tea.Model, tea.Cmd) {
+	return m, nil
+}
+
+func (m *assistantSectionModel) View() tea.View {
+	t := styles.CurrentTheme()
+	finishData := m.message.FinishPart()
+	finishTime := time.Unix(finishData.Time, 0)
+	duration := finishTime.Sub(m.lastUserMessageTime)
+	infoMsg := t.S().Subtle.Render(duration.String())
+	icon := t.S().Subtle.Render(styles.ModelIcon)
+	model := t.S().Muted.Render(models.SupportedModels[m.message.Model].Name)
+	assistant := fmt.Sprintf("%s  %s %s", icon, model, infoMsg)
+	return tea.NewView(
+		t.S().Base.PaddingLeft(2).Render(
+			core.Section(assistant, m.width-2),
+		),
+	)
+}
+
+func (m *assistantSectionModel) GetSize() (int, int) {
+	return m.width, 1
+}
+
+func (m *assistantSectionModel) SetSize(width int, height int) tea.Cmd {
+	m.width = width
+	return nil
+}
+
+func (m *assistantSectionModel) IsSectionHeader() bool {
+	return true
+}
  
  
  
    
    @@ -111,8 +111,18 @@ func (br baseRenderer) unmarshalParams(input string, target any) error {
 	return json.Unmarshal([]byte(input), target)
 }
 
+// makeHeader builds the tool call header with status icon and parameters for a nested tool call.
+func (br baseRenderer) makeNestedHeader(v *toolCallCmp, tool string, width int, params ...string) string {
+	t := styles.CurrentTheme()
+	tool = t.S().Base.Foreground(t.FgHalfMuted).Render(tool) + " "
+	return tool + renderParamList(true, width-lipgloss.Width(tool), params...)
+}
+
 // makeHeader builds "<Tool>: param (key=value)" and truncates as needed.
 func (br baseRenderer) makeHeader(v *toolCallCmp, tool string, width int, params ...string) string {
+	if v.isNested {
+		return br.makeNestedHeader(v, tool, width, params...)
+	}
 	t := styles.CurrentTheme()
 	icon := t.S().Base.Foreground(t.GreenDark).Render(styles.ToolPending)
 	if v.result.ToolCallID != "" {
@@ -125,16 +135,17 @@ func (br baseRenderer) makeHeader(v *toolCallCmp, tool string, width int, params
 		icon = t.S().Muted.Render(styles.ToolPending)
 	}
 	tool = t.S().Base.Foreground(t.Blue).Render(tool)
-	prefix := fmt.Sprintf("%s %s: ", icon, tool)
-	return prefix + renderParamList(width-lipgloss.Width(prefix), params...)
+	prefix := fmt.Sprintf("%s %s ", icon, tool)
+	return prefix + renderParamList(false, width-lipgloss.Width(prefix), params...)
 }
 
 // renderError provides consistent error rendering
 func (br baseRenderer) renderError(v *toolCallCmp, message string) string {
 	t := styles.CurrentTheme()
 	header := br.makeHeader(v, prettifyToolName(v.call.Name), v.textWidth(), "")
-	message = t.S().Error.Render(v.fit(message, v.textWidth()-2)) // -2 for padding
-	return joinHeaderBody(header, message)
+	errorTag := t.S().Base.Padding(0, 1).Background(t.Red).Foreground(t.White).Render("ERROR")
+	message = t.S().Base.Foreground(t.FgHalfMuted).Render(v.fit(message, v.textWidth()-3-lipgloss.Width(errorTag))) // -2 for padding and space
+	return joinHeaderBody(header, errorTag+" "+message)
 }
 
 // Register tool renderers
@@ -188,6 +199,9 @@ func (br bashRenderer) Render(v *toolCallCmp) string {
 	args := newParamBuilder().addMain(cmd).build()
 
 	return br.renderWithParams(v, "Bash", args, func() string {
+		if v.result.Content == tools.BashNoOutput {
+			return ""
+		}
 		return renderPlainContent(v, v.result.Content)
 	})
 }
@@ -244,13 +258,12 @@ type editRenderer struct {
 // Render displays the edited file with a formatted diff of changes
 func (er editRenderer) Render(v *toolCallCmp) string {
 	var params tools.EditParams
-	if err := er.unmarshalParams(v.call.Input, ¶ms); err != nil {
-		return er.renderError(v, "Invalid edit parameters")
+	var args []string
+	if err := er.unmarshalParams(v.call.Input, ¶ms); err == nil {
+		file := fsext.PrettyPath(params.FilePath)
+		args = newParamBuilder().addMain(file).build()
 	}
 
-	file := fsext.PrettyPath(params.FilePath)
-	args := newParamBuilder().addMain(file).build()
-
 	return er.renderWithParams(v, "Edit", args, func() string {
 		var meta tools.EditResponseMetadata
 		if err := er.unmarshalParams(v.result.Metadata, &meta); err != nil {
@@ -260,8 +273,10 @@ func (er editRenderer) Render(v *toolCallCmp) string {
 		formatter := core.DiffFormatter().
 			Before(fsext.PrettyPath(params.FilePath), meta.OldContent).
 			After(fsext.PrettyPath(params.FilePath), meta.NewContent).
-			Split().
 			Width(v.textWidth() - 2) // -2 for padding
+		if v.textWidth() > 120 {
+			formatter = formatter.Split()
+		}
 		return formatter.String()
 	})
 }
@@ -278,13 +293,13 @@ type writeRenderer struct {
 // Render displays the file being written with syntax highlighting
 func (wr writeRenderer) Render(v *toolCallCmp) string {
 	var params tools.WriteParams
-	if err := wr.unmarshalParams(v.call.Input, ¶ms); err != nil {
-		return wr.renderError(v, "Invalid write parameters")
+	var args []string
+	var file string
+	if err := wr.unmarshalParams(v.call.Input, ¶ms); err == nil {
+		file = fsext.PrettyPath(params.FilePath)
+		args = newParamBuilder().addMain(file).build()
 	}
 
-	file := fsext.PrettyPath(params.FilePath)
-	args := newParamBuilder().addMain(file).build()
-
 	return wr.renderWithParams(v, "Write", args, func() string {
 		return renderCodeContent(v, file, params.Content, 0)
 	})
@@ -302,16 +317,15 @@ type fetchRenderer struct {
 // Render displays the fetched URL with format and timeout parameters
 func (fr fetchRenderer) Render(v *toolCallCmp) string {
 	var params tools.FetchParams
-	if err := fr.unmarshalParams(v.call.Input, ¶ms); err != nil {
-		return fr.renderError(v, "Invalid fetch parameters")
+	var args []string
+	if err := fr.unmarshalParams(v.call.Input, ¶ms); err == nil {
+		args = newParamBuilder().
+			addMain(params.URL).
+			addKeyValue("format", params.Format).
+			addKeyValue("timeout", formatTimeout(params.Timeout)).
+			build()
 	}
 
-	args := newParamBuilder().
-		addMain(params.URL).
-		addKeyValue("format", params.Format).
-		addKeyValue("timeout", formatTimeout(params.Timeout)).
-		build()
-
 	return fr.renderWithParams(v, "Fetch", args, func() string {
 		file := fr.getFileExtension(params.Format)
 		return renderCodeContent(v, file, v.result.Content, 0)
@@ -350,15 +364,14 @@ type globRenderer struct {
 // Render displays the glob pattern with optional path parameter
 func (gr globRenderer) Render(v *toolCallCmp) string {
 	var params tools.GlobParams
-	if err := gr.unmarshalParams(v.call.Input, ¶ms); err != nil {
-		return gr.renderError(v, "Invalid glob parameters")
+	var args []string
+	if err := gr.unmarshalParams(v.call.Input, ¶ms); err == nil {
+		args = newParamBuilder().
+			addMain(params.Pattern).
+			addKeyValue("path", params.Path).
+			build()
 	}
 
-	args := newParamBuilder().
-		addMain(params.Pattern).
-		addKeyValue("path", params.Path).
-		build()
-
 	return gr.renderWithParams(v, "Glob", args, func() string {
 		return renderPlainContent(v, v.result.Content)
 	})
@@ -376,17 +389,16 @@ type grepRenderer struct {
 // Render displays the search pattern with path, include, and literal text options
 func (gr grepRenderer) Render(v *toolCallCmp) string {
 	var params tools.GrepParams
-	if err := gr.unmarshalParams(v.call.Input, ¶ms); err != nil {
-		return gr.renderError(v, "Invalid grep parameters")
+	var args []string
+	if err := gr.unmarshalParams(v.call.Input, ¶ms); err == nil {
+		args = newParamBuilder().
+			addMain(params.Pattern).
+			addKeyValue("path", params.Path).
+			addKeyValue("include", params.Include).
+			addFlag("literal", params.LiteralText).
+			build()
 	}
 
-	args := newParamBuilder().
-		addMain(params.Pattern).
-		addKeyValue("path", params.Path).
-		addKeyValue("include", params.Include).
-		addFlag("literal", params.LiteralText).
-		build()
-
 	return gr.renderWithParams(v, "Grep", args, func() string {
 		return renderPlainContent(v, v.result.Content)
 	})
@@ -404,17 +416,16 @@ type lsRenderer struct {
 // Render displays the directory path, defaulting to current directory
 func (lr lsRenderer) Render(v *toolCallCmp) string {
 	var params tools.LSParams
-	if err := lr.unmarshalParams(v.call.Input, ¶ms); err != nil {
-		return lr.renderError(v, "Invalid ls parameters")
-	}
+	var args []string
+	if err := lr.unmarshalParams(v.call.Input, ¶ms); err == nil {
+		path := params.Path
+		if path == "" {
+			path = "."
+		}
+		path = fsext.PrettyPath(path)
 
-	path := params.Path
-	if path == "" {
-		path = "."
+		args = newParamBuilder().addMain(path).build()
 	}
-	path = fsext.PrettyPath(path)
-
-	args := newParamBuilder().addMain(path).build()
 
 	return lr.renderWithParams(v, "List", args, func() string {
 		return renderPlainContent(v, v.result.Content)
@@ -433,16 +444,15 @@ type sourcegraphRenderer struct {
 // Render displays the search query with optional count and context window parameters
 func (sr sourcegraphRenderer) Render(v *toolCallCmp) string {
 	var params tools.SourcegraphParams
-	if err := sr.unmarshalParams(v.call.Input, ¶ms); err != nil {
-		return sr.renderError(v, "Invalid sourcegraph parameters")
+	var args []string
+	if err := sr.unmarshalParams(v.call.Input, ¶ms); err == nil {
+		args = newParamBuilder().
+			addMain(params.Query).
+			addKeyValue("count", formatNonZero(params.Count)).
+			addKeyValue("context", formatNonZero(params.ContextWindow)).
+			build()
 	}
 
-	args := newParamBuilder().
-		addMain(params.Query).
-		addKeyValue("count", formatNonZero(params.Count)).
-		addKeyValue("context", formatNonZero(params.ContextWindow)).
-		build()
-
 	return sr.renderWithParams(v, "Sourcegraph", args, func() string {
 		return renderPlainContent(v, v.result.Content)
 	})
@@ -475,25 +485,47 @@ type agentRenderer struct {
 	baseRenderer
 }
 
+func RoundedEnumerator(children tree.Children, index int) string {
+	if children.Length()-1 == index {
+		return " ╰──"
+	}
+	return " ├──"
+}
+
 // Render displays agent task parameters and result content
 func (tr agentRenderer) Render(v *toolCallCmp) string {
+	t := styles.CurrentTheme()
 	var params agent.AgentParams
-	if err := tr.unmarshalParams(v.call.Input, ¶ms); err != nil {
-		return tr.renderError(v, "Invalid task parameters")
-	}
+	tr.unmarshalParams(v.call.Input, ¶ms)
+
 	prompt := params.Prompt
 	prompt = strings.ReplaceAll(prompt, "\n", " ")
-	args := newParamBuilder().addMain(prompt).build()
 
-	header := tr.makeHeader(v, "Task", v.textWidth(), args...)
-	t := tree.Root(header)
+	header := tr.makeHeader(v, "Agent", v.textWidth())
+	if res, done := earlyState(header, v); done {
+		return res
+	}
+	taskTag := t.S().Base.Padding(0, 1).MarginLeft(1).Background(t.BlueLight).Foreground(t.White).Render("Task")
+	remainingWidth := v.textWidth() - lipgloss.Width(header) - lipgloss.Width(taskTag) - 2 // -2 for padding
+	prompt = t.S().Muted.Width(remainingWidth).Render(prompt)
+	header = lipgloss.JoinVertical(
+		lipgloss.Left,
+		header,
+		"",
+		lipgloss.JoinHorizontal(
+			lipgloss.Left,
+			taskTag,
+			" ",
+			prompt,
+		),
+	)
+	childTools := tree.Root(header)
 
 	for _, call := range v.nestedToolCalls {
-		t.Child(call.View())
+		childTools.Child(call.View())
 	}
-
 	parts := []string{
-		t.Enumerator(tree.RoundedEnumerator).String(),
+		childTools.Enumerator(RoundedEnumerator).String(),
 	}
 	if v.result.ToolCallID == "" {
 		v.spinning = true
@@ -516,7 +548,8 @@ func (tr agentRenderer) Render(v *toolCallCmp) string {
 }
 
 // renderParamList renders params, params[0] (params[1]=params[2] ....)
-func renderParamList(paramsWidth int, params ...string) string {
+func renderParamList(nested bool, paramsWidth int, params ...string) string {
+	t := styles.CurrentTheme()
 	if len(params) == 0 {
 		return ""
 	}
@@ -526,7 +559,10 @@ func renderParamList(paramsWidth int, params ...string) string {
 	}
 
 	if len(params) == 1 {
-		return mainParam
+		if nested {
+			return t.S().Muted.Render(mainParam)
+		}
+		return t.S().Subtle.Render(mainParam)
 	}
 	otherParams := params[1:]
 	// create pairs of key/value
@@ -547,15 +583,21 @@ func renderParamList(paramsWidth int, params ...string) string {
 	partsRendered := strings.Join(parts, ", ")
 	remainingWidth := paramsWidth - lipgloss.Width(partsRendered) - 3 // count for " ()"
 	if remainingWidth < 30 {
+		if nested {
+			return t.S().Muted.Render(mainParam)
+		}
 		// No space for the params, just show the main
-		return mainParam
+		return t.S().Subtle.Render(mainParam)
 	}
 
 	if len(parts) > 0 {
 		mainParam = fmt.Sprintf("%s (%s)", mainParam, strings.Join(parts, ", "))
 	}
 
-	return ansi.Truncate(mainParam, paramsWidth, "...")
+	if nested {
+		return t.S().Muted.Render(ansi.Truncate(mainParam, paramsWidth, "..."))
+	}
+	return t.S().Subtle.Render(ansi.Truncate(mainParam, paramsWidth, "..."))
 }
 
 // earlyState returns immediately‑rendered error/cancelled/ongoing states.
@@ -566,21 +608,21 @@ func earlyState(header string, v *toolCallCmp) (string, bool) {
 	case v.result.IsError:
 		message = v.renderToolError()
 	case v.cancelled:
-		message = "Cancelled"
+		message = t.S().Base.Padding(0, 1).Background(t.Border).Render("Cancelled")
 	case v.result.ToolCallID == "":
-		message = "Waiting for tool to start..."
+		message = t.S().Base.Padding(0, 1).Background(t.Accent).Foreground(t.FgSubtle).Render("Waiting for tool to start...")
 	default:
 		return "", false
 	}
 
 	message = t.S().Base.PaddingLeft(2).Render(message)
-	return lipgloss.JoinVertical(lipgloss.Left, header, message), true
+	return lipgloss.JoinVertical(lipgloss.Left, header, "", message), true
 }
 
 func joinHeaderBody(header, body string) string {
 	t := styles.CurrentTheme()
 	body = t.S().Base.PaddingLeft(2).Render(body)
-	return lipgloss.JoinVertical(lipgloss.Left, header, body, "")
+	return lipgloss.JoinVertical(lipgloss.Left, header, "", body, "")
 }
 
 func renderPlainContent(v *toolCallCmp, content string) string {
@@ -600,46 +642,56 @@ func renderPlainContent(v *toolCallCmp, content string) string {
 		}
 		out = append(out, t.S().Muted.
 			Width(width).
-			Background(t.BgSubtle).
+			Background(t.BgBaseLighter).
 			Render(ln))
 	}
 
 	if len(lines) > responseContextHeight {
 		out = append(out, t.S().Muted.
-			Background(t.BgSubtle).
+			Background(t.BgBaseLighter).
 			Width(width).
 			Render(fmt.Sprintf("... (%d lines)", len(lines)-responseContextHeight)))
 	}
 	return strings.Join(out, "\n")
 }
 
+func pad(v any, width int) string {
+	s := fmt.Sprintf("%v", v)
+	w := ansi.StringWidth(s)
+	if w >= width {
+		return s
+	}
+	return strings.Repeat(" ", width-w) + s
+}
+
 func renderCodeContent(v *toolCallCmp, path, content string, offset int) string {
 	t := styles.CurrentTheme()
 	truncated := truncateHeight(content, responseContextHeight)
 
-	highlighted, _ := highlight.SyntaxHighlight(truncated, path, t.BgSubtle)
+	highlighted, _ := highlight.SyntaxHighlight(truncated, path, t.BgBase)
 	lines := strings.Split(highlighted, "\n")
 
 	if len(strings.Split(content, "\n")) > responseContextHeight {
 		lines = append(lines, t.S().Muted.
-			Background(t.BgSubtle).
-			Width(v.textWidth()-2).
-			Render(fmt.Sprintf("... (%d lines)", len(strings.Split(content, "\n"))-responseContextHeight)))
+			Background(t.BgBase).
+			Render(fmt.Sprintf(" …(%d lines)", len(strings.Split(content, "\n"))-responseContextHeight)))
 	}
 
+	maxLineNumber := len(lines) + offset
+	padding := lipgloss.Width(fmt.Sprintf("%d", maxLineNumber))
 	for i, ln := range lines {
-		num := t.S().Muted.
-			Background(t.BgSubtle).
-			PaddingLeft(4).
-			PaddingRight(2).
-			Render(fmt.Sprintf("%d", i+1+offset))
-		w := v.textWidth() - 2 - lipgloss.Width(num) // -2 for left padding
+		num := t.S().Base.
+			Foreground(t.FgMuted).
+			Background(t.BgBase).
+			PaddingRight(1).
+			PaddingLeft(1).
+			Render(pad(i+1+offset, padding))
+		w := v.textWidth() - 10 - lipgloss.Width(num) // -4 for left padding
 		lines[i] = lipgloss.JoinHorizontal(lipgloss.Left,
 			num,
 			t.S().Base.
-				Width(w).
-				Background(t.BgSubtle).
-				Render(v.fit(ln, w)))
+				PaddingLeft(1).
+				Render(v.fit(ln, w-1)))
 	}
 	return lipgloss.JoinVertical(lipgloss.Left, lines...)
 }
@@ -647,8 +699,9 @@ func renderCodeContent(v *toolCallCmp, path, content string, offset int) string
 func (v *toolCallCmp) renderToolError() string {
 	t := styles.CurrentTheme()
 	err := strings.ReplaceAll(v.result.Content, "\n", " ")
-	err = fmt.Sprintf("Error: %s", err)
-	return t.S().Base.Foreground(t.Error).Render(v.fit(err, v.textWidth()))
+	errTag := t.S().Base.Padding(0, 1).Background(t.Red).Foreground(t.White).Render("ERROR")
+	err = fmt.Sprintf("%s %s", errTag, t.S().Base.Foreground(t.FgHalfMuted).Render(v.fit(err, v.textWidth()-2-lipgloss.Width(errTag))))
+	return err
 }
 
 func truncateHeight(s string, h int) string {
@@ -662,7 +715,7 @@ func truncateHeight(s string, h int) string {
 func prettifyToolName(name string) string {
 	switch name {
 	case agent.AgentToolName:
-		return "Task"
+		return "Agent"
 	case tools.BashToolName:
 		return "Bash"
 	case tools.EditToolName:
  
  
  
    
    @@ -25,7 +25,7 @@ type ToolCallCmp interface {
 	SetToolResult(message.ToolResult)  // Update tool result
 	SetToolCall(message.ToolCall)      // Update tool call
 	SetCancelled()                     // Mark as cancelled
-	ParentMessageId() string           // Get parent message ID
+	ParentMessageID() string           // Get parent message ID
 	Spinning() bool                    // Animation state for pending tools
 	GetNestedToolCalls() []ToolCallCmp // Get nested tool calls
 	SetNestedToolCalls([]ToolCallCmp)  // Set nested tool calls
@@ -83,10 +83,10 @@ func WithToolCallNestedCalls(calls []ToolCallCmp) ToolCallOption {
 
 // NewToolCallCmp creates a new tool call component with the given parent message ID,
 // tool call, and optional configuration
-func NewToolCallCmp(parentMessageId string, tc message.ToolCall, opts ...ToolCallOption) ToolCallCmp {
+func NewToolCallCmp(parentMessageID string, tc message.ToolCall, opts ...ToolCallOption) ToolCallCmp {
 	m := &toolCallCmp{
 		call:            tc,
-		parentMessageID: parentMessageId,
+		parentMessageID: parentMessageID,
 	}
 	for _, opt := range opts {
 		opt(m)
@@ -137,9 +137,6 @@ func (m *toolCallCmp) View() tea.View {
 	box := m.style()
 
 	if !m.call.Finished && !m.cancelled {
-		if m.isNested {
-			return tea.NewView(box.Render(m.renderPending()))
-		}
 		return tea.NewView(box.Render(m.renderPending()))
 	}
 
@@ -166,8 +163,8 @@ func (m *toolCallCmp) SetToolCall(call message.ToolCall) {
 	}
 }
 
-// ParentMessageId returns the ID of the message that initiated this tool call
-func (m *toolCallCmp) ParentMessageId() string {
+// ParentMessageID returns the ID of the message that initiated this tool call
+func (m *toolCallCmp) ParentMessageID() string {
 	return m.parentMessageID
 }
 
@@ -210,9 +207,13 @@ func (m *toolCallCmp) SetIsNested(isNested bool) {
 // renderPending displays the tool name with a loading animation for pending tool calls
 func (m *toolCallCmp) renderPending() string {
 	t := styles.CurrentTheme()
+	if m.isNested {
+		tool := t.S().Base.Foreground(t.FgHalfMuted).Render(prettifyToolName(m.call.Name))
+		return fmt.Sprintf("%s %s", tool, m.anim.View())
+	}
 	icon := t.S().Base.Foreground(t.GreenDark).Render(styles.ToolPending)
 	tool := t.S().Base.Foreground(t.Blue).Render(prettifyToolName(m.call.Name))
-	return fmt.Sprintf("%s %s: %s", icon, tool, m.anim.View())
+	return fmt.Sprintf("%s %s %s", icon, tool, m.anim.View())
 }
 
 // style returns the lipgloss style for the tool call component.
@@ -229,14 +230,17 @@ func (m *toolCallCmp) style() lipgloss.Style {
 // textWidth calculates the available width for text content,
 // accounting for borders and padding
 func (m *toolCallCmp) textWidth() int {
+	if m.isNested {
+		return m.width - 6
+	}
 	return m.width - 5 // take into account the border and PaddingLeft
 }
 
 // fit truncates content to fit within the specified width with ellipsis
 func (m *toolCallCmp) fit(content string, width int) string {
 	t := styles.CurrentTheme()
-	lineStyle := t.S().Muted.Background(t.BgSubtle)
-	dots := lineStyle.Render("...")
+	lineStyle := t.S().Muted
+	dots := lineStyle.Render("…")
 	return ansi.Truncate(content, width, dots)
 }
 
  
  
  
    
    @@ -288,9 +288,9 @@ func (m *sidebarCmp) filesBlock() string {
 	})
 
 	for _, file := range files {
-		// Extract just the filename from the path
-
-		// Create status indicators for additions/deletions
+		if file.Additions == 0 && file.Deletions == 0 {
+			continue // skip files with no changes
+		}
 		var statusParts []string
 		if file.Additions > 0 {
 			statusParts = append(statusParts, t.S().Base.Foreground(t.Success).Render(fmt.Sprintf("+%d", file.Additions)))
  
  
  
    
    @@ -148,8 +148,9 @@ func SelectableButtons(buttons []ButtonOpts, spacing string) string {
 }
 
 func DiffFormatter() *diffview.DiffView {
+	t := styles.CurrentTheme()
 	formatDiff := diffview.New()
 	style := chroma.MustNewStyle("crush", styles.GetChromaTheme())
-	diff := formatDiff.ChromaStyle(style)
+	diff := formatDiff.ChromaStyle(style).Style(t.S().Diff)
 	return diff
 }
  
  
  
    
    @@ -32,10 +32,10 @@ func DefaultKeyMap() KeyMap {
 			key.WithKeys("k"),
 		),
 		UpOneItem: key.NewBinding(
-			key.WithKeys("shift+up", "shift+k"),
+			key.WithKeys("shift+up", "K"),
 		),
 		DownOneItem: key.NewBinding(
-			key.WithKeys("shift+down", "shift+j"),
+			key.WithKeys("shift+down", "J"),
 		),
 		HalfPageDown: key.NewBinding(
 			key.WithKeys("d"),
@@ -47,7 +47,7 @@ func DefaultKeyMap() KeyMap {
 			key.WithKeys("g", "home"),
 		),
 		End: key.NewBinding(
-			key.WithKeys("shift+g", "end"),
+			key.WithKeys("G", "end"),
 		),
 	}
 }
  
  
  
    
    @@ -749,8 +749,8 @@ func (m *model) ensureVisibleReverse(cachedItem renderedItem) {
 func (m *model) goToBottom() tea.Cmd {
 	cmds := []tea.Cmd{m.blurSelected()}
 	m.viewState.reverse = true
+	m.selectionState.selectedIndex = m.findLastSelectableItem()
 	if m.isFocused {
-		m.selectionState.selectedIndex = m.findLastSelectableItem()
 		cmds = append(cmds, m.focusSelected())
 	}
 	m.ResetView()
@@ -764,7 +764,9 @@ func (m *model) goToTop() tea.Cmd {
 	cmds := []tea.Cmd{m.blurSelected()}
 	m.viewState.reverse = false
 	m.selectionState.selectedIndex = m.findFirstSelectableItem()
-	cmds = append(cmds, m.focusSelected())
+	if m.isFocused {
+		cmds = append(cmds, m.focusSelected())
+	}
 	m.ResetView()
 	return tea.Batch(cmds...)
 }
  
  
  
    
    @@ -1,6 +1,7 @@
 package status
 
 import (
+	"strings"
 	"time"
 
 	"github.com/charmbracelet/bubbles/v2/help"
@@ -10,6 +11,8 @@ import (
 	"github.com/charmbracelet/crush/internal/session"
 	"github.com/charmbracelet/crush/internal/tui/styles"
 	"github.com/charmbracelet/crush/internal/tui/util"
+	"github.com/charmbracelet/lipgloss/v2"
+	"github.com/charmbracelet/x/ansi"
 )
 
 type StatusCmp interface {
@@ -85,6 +88,7 @@ func (m *statusCmp) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
 					TTL:  msg.Payload.PersistTime,
 				}
 			}
+			return m, m.clearMessageCmd(m.info.TTL)
 		}
 	}
 	return m, nil
@@ -94,18 +98,32 @@ func (m *statusCmp) View() tea.View {
 	t := styles.CurrentTheme()
 	status := t.S().Base.Padding(0, 1, 1, 1).Render(m.help.View(m.keyMap))
 	if m.info.Msg != "" {
-		switch m.info.Type {
-		case util.InfoTypeError:
-			status = t.S().Base.Background(t.Error).Padding(0, 1).Width(m.width).Render(m.info.Msg)
-		case util.InfoTypeWarn:
-			status = t.S().Base.Background(t.Warning).Padding(0, 1).Width(m.width).Render(m.info.Msg)
-		default:
-			status = t.S().Base.Background(t.Info).Padding(0, 1).Width(m.width).Render(m.info.Msg)
-		}
+		status = m.infoMsg()
 	}
 	return tea.NewView(status)
 }
 
+func (m *statusCmp) infoMsg() string {
+	t := styles.CurrentTheme()
+	message := ""
+	infoType := ""
+	switch m.info.Type {
+	case util.InfoTypeError:
+		infoType = t.S().Base.Background(t.Red).Padding(0, 1).Render("ERROR")
+		width := m.width - lipgloss.Width(infoType)
+		message = t.S().Base.Background(t.Error).Foreground(t.White).Padding(0, 1).Width(width).Render(ansi.Truncate(m.info.Msg, width, "…"))
+	case util.InfoTypeWarn:
+		infoType = t.S().Base.Foreground(t.BgOverlay).Background(t.Yellow).Padding(0, 1).Render("WARNING")
+		width := m.width - lipgloss.Width(infoType)
+		message = t.S().Base.Foreground(t.BgOverlay).Background(t.Warning).Padding(0, 1).Width(width).Render(ansi.Truncate(m.info.Msg, width, "…"))
+	default:
+		infoType = t.S().Base.Foreground(t.BgOverlay).Background(t.Green).Padding(0, 1).Render("OKAY!")
+		width := m.width - lipgloss.Width(infoType)
+		message = t.S().Base.Background(t.Success).Foreground(t.White).Padding(0, 1).Width(width).Render(ansi.Truncate(m.info.Msg, width, "…"))
+	}
+	return strings.Join([]string{infoType, message}, "")
+}
+
 func (m *statusCmp) ToggleFullHelp() {
 	m.help.ShowAll = !m.help.ShowAll
 }
@@ -119,7 +137,7 @@ func NewStatusCmp(keyMap help.KeyMap) StatusCmp {
 	help := help.New()
 	help.Styles = t.S().Help
 	return &statusCmp{
-		messageTTL: 10 * time.Second,
+		messageTTL: 5 * time.Second,
 		help:       help,
 		keyMap:     keyMap,
 	}
  
  
  
    
    @@ -211,15 +211,6 @@ func (c *commandArgumentsDialogCmp) moveCursor(cursor *tea.Cursor) *tea.Cursor {
 	return cursor
 }
 
-func (c *commandArgumentsDialogCmp) style() lipgloss.Style {
-	t := styles.CurrentTheme()
-	return t.S().Base.
-		Width(c.width).
-		Padding(1).
-		Border(lipgloss.RoundedBorder()).
-		BorderForeground(t.BorderFocus)
-}
-
 func (c *commandArgumentsDialogCmp) Position() (int, int) {
 	row := c.wHeight / 2
 	row -= c.wHeight / 2
  
  
  
    
    @@ -193,15 +193,15 @@ func (m *modelDialogCmp) listHeight() int {
 
 func GetSelectedModel(cfg *config.Config) models.Model {
 	agentCfg := cfg.Agents[config.AgentCoder]
-	selectedModelId := agentCfg.Model
-	return models.SupportedModels[selectedModelId]
+	selectedModelID := agentCfg.Model
+	return models.SupportedModels[selectedModelID]
 }
 
 func getEnabledProviders(cfg *config.Config) []models.ModelProvider {
 	var providers []models.ModelProvider
-	for providerId, provider := range cfg.Providers {
+	for providerID, provider := range cfg.Providers {
 		if !provider.Disabled {
-			providers = append(providers, providerId)
+			providers = append(providers, providerID)
 		}
 	}
 
  
  
  
    
    @@ -11,7 +11,12 @@ type KeyMap struct {
 	Select,
 	Allow,
 	AllowSession,
-	Deny key.Binding
+	Deny,
+	ToggleDiffMode,
+	ScrollDown,
+	ScrollUp key.Binding
+	ScrollLeft,
+	ScrollRight key.Binding
 }
 
 func DefaultKeyMap() KeyMap {
@@ -41,9 +46,29 @@ func DefaultKeyMap() KeyMap {
 			key.WithHelp("d", "deny"),
 		),
 		Select: key.NewBinding(
-			key.WithKeys("enter", "tab", "ctrl+y"),
+			key.WithKeys("enter", "ctrl+y"),
 			key.WithHelp("enter", "confirm"),
 		),
+		ToggleDiffMode: key.NewBinding(
+			key.WithKeys("t"),
+			key.WithHelp("t", "toggle diff mode"),
+		),
+		ScrollDown: key.NewBinding(
+			key.WithKeys("shift+down", "J"),
+			key.WithHelp("shift+↓", "scroll down"),
+		),
+		ScrollUp: key.NewBinding(
+			key.WithKeys("shift+up", "K"),
+			key.WithHelp("shift+↑", "scroll up"),
+		),
+		ScrollLeft: key.NewBinding(
+			key.WithKeys("shift+left", "H"),
+			key.WithHelp("shift+←", "scroll left"),
+		),
+		ScrollRight: key.NewBinding(
+			key.WithKeys("shift+right", "L"),
+			key.WithHelp("shift+→", "scroll right"),
+		),
 	}
 }
 
@@ -57,6 +82,11 @@ func (k KeyMap) KeyBindings() []key.Binding {
 		k.Allow,
 		k.AllowSession,
 		k.Deny,
+		k.ToggleDiffMode,
+		k.ScrollDown,
+		k.ScrollUp,
+		k.ScrollLeft,
+		k.ScrollRight,
 	}
 }
 
@@ -74,9 +104,14 @@ func (k KeyMap) FullHelp() [][]key.Binding {
 // ShortHelp implements help.KeyMap.
 func (k KeyMap) ShortHelp() []key.Binding {
 	return []key.Binding{
-		k.Allow,
-		k.AllowSession,
-		k.Deny,
-		k.Select,
+		k.ToggleDiffMode,
+		key.NewBinding(
+			key.WithKeys("shift+left", "shift+down", "shift+up", "shift+right"),
+			key.WithHelp("shift+←↓↑→", "scroll"),
+		),
+		key.NewBinding(
+			key.WithKeys("shift+h", "shift+j", "shift+k", "shift+l"),
+			key.WithHelp("shift+hjkl", "scroll"),
+		),
 	}
 }
  
  
  
    
    @@ -4,6 +4,7 @@ import (
 	"fmt"
 	"strings"
 
+	"github.com/charmbracelet/bubbles/v2/help"
 	"github.com/charmbracelet/bubbles/v2/key"
 	"github.com/charmbracelet/bubbles/v2/viewport"
 	tea "github.com/charmbracelet/bubbletea/v2"
@@ -50,6 +51,11 @@ type permissionDialogCmp struct {
 	contentViewPort viewport.Model
 	selectedOption  int // 0: Allow, 1: Allow for session, 2: Deny
 
+	// Diff view state
+	diffSplitMode bool // true for split, false for unified
+	diffXOffset   int  // horizontal scroll offset
+	diffYOffset   int  // vertical scroll offset
+
 	keyMap KeyMap
 }
 
@@ -101,6 +107,21 @@ func (p *permissionDialogCmp) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
 				util.CmdHandler(dialogs.CloseDialogMsg{}),
 				util.CmdHandler(PermissionResponseMsg{Action: PermissionDeny, Permission: p.permission}),
 			)
+		case key.Matches(msg, p.keyMap.ToggleDiffMode):
+			p.diffSplitMode = !p.diffSplitMode
+			return p, nil
+		case key.Matches(msg, p.keyMap.ScrollDown):
+			p.diffYOffset += 1
+			return p, nil
+		case key.Matches(msg, p.keyMap.ScrollUp):
+			p.diffYOffset = max(0, p.diffYOffset-1)
+			return p, nil
+		case key.Matches(msg, p.keyMap.ScrollLeft):
+			p.diffXOffset = max(0, p.diffXOffset-5)
+			return p, nil
+		case key.Matches(msg, p.keyMap.ScrollRight):
+			p.diffXOffset += 5
+			return p, nil
 		default:
 			// Pass other keys to viewport
 			viewPort, cmd := p.contentViewPort.Update(msg)
@@ -269,8 +290,15 @@ func (p *permissionDialogCmp) renderEditContent() string {
 		formatter := core.DiffFormatter().
 			Before(fsext.PrettyPath(pr.FilePath), pr.OldContent).
 			After(fsext.PrettyPath(pr.FilePath), pr.NewContent).
+			Height(p.contentViewPort.Height()).
 			Width(p.contentViewPort.Width()).
-			Split()
+			XOffset(p.diffXOffset).
+			YOffset(p.diffYOffset)
+		if p.diffSplitMode {
+			formatter = formatter.Split()
+		} else {
+			formatter = formatter.Unified()
+		}
 
 		diff := formatter.String()
 		contentHeight := min(p.height-9, lipgloss.Height(diff))
@@ -367,11 +395,13 @@ func (p *permissionDialogCmp) render() string {
 
 	// Render content based on tool type
 	var contentFinal string
+	var contentHelp string
 	switch p.permission.ToolName {
 	case tools.BashToolName:
 		contentFinal = p.renderBashContent()
 	case tools.EditToolName:
 		contentFinal = p.renderEditContent()
+		contentHelp = help.New().View(p.keyMap)
 	case tools.WriteToolName:
 		contentFinal = p.renderWriteContent()
 	case tools.FetchToolName:
@@ -381,8 +411,7 @@ func (p *permissionDialogCmp) render() string {
 	}
 	// Calculate content height dynamically based on window size
 
-	content := lipgloss.JoinVertical(
-		lipgloss.Top,
+	strs := []string{
 		title,
 		"",
 		headerContent,
@@ -390,7 +419,11 @@ func (p *permissionDialogCmp) render() string {
 		"",
 		buttons,
 		"",
-	)
+	}
+	if contentHelp != "" {
+		strs = append(strs, "", contentHelp)
+	}
+	content := lipgloss.JoinVertical(lipgloss.Top, strs...)
 
 	return baseStyle.
 		Padding(0, 1).
  
  
  
    
    @@ -61,8 +61,8 @@ func (k KeyMap) FullHelp() [][]key.Binding {
 		}
 	}
 
-	for i := 0; i < len(cleaned); i += 2 {
-		end := min(i+2, len(cleaned))
+	for i := 0; i < len(cleaned); i += 3 {
+		end := min(i+3, len(cleaned))
 		m = append(m, cleaned[i:end])
 	}
 	return m
  
  
  
    
    @@ -3,6 +3,7 @@ package chat
 import (
 	"context"
 	"strings"
+	"time"
 
 	"github.com/charmbracelet/bubbles/v2/key"
 	tea "github.com/charmbracelet/bubbletea/v2"
@@ -33,6 +34,7 @@ type (
 	ChatFocusedMsg    struct {
 		Focused bool // True if the chat input is focused, false otherwise
 	}
+	CancelTimerExpiredMsg struct{}
 )
 
 type ChatPage interface {
@@ -57,6 +59,8 @@ type chatPage struct {
 	showDetails      bool // Show details in the header
 	header           header.Header
 	compactSidebar   layout.Container
+
+	cancelPending bool // True if ESC was pressed once and waiting for second press
 }
 
 func (p *chatPage) Init() tea.Cmd {
@@ -67,9 +71,19 @@ func (p *chatPage) Init() tea.Cmd {
 	)
 }
 
+// cancelTimerCmd creates a command that expires the cancel timer after 2 seconds
+func (p *chatPage) cancelTimerCmd() tea.Cmd {
+	return tea.Tick(2*time.Second, func(time.Time) tea.Msg {
+		return CancelTimerExpiredMsg{}
+	})
+}
+
 func (p *chatPage) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
 	var cmds []tea.Cmd
 	switch msg := msg.(type) {
+	case CancelTimerExpiredMsg:
+		p.cancelPending = false
+		return p, nil
 	case tea.WindowSizeMsg:
 		h, cmd := p.header.Update(msg)
 		cmds = append(cmds, cmd)
@@ -181,10 +195,16 @@ func (p *chatPage) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
 			return p, tea.Batch(cmds...)
 		case key.Matches(msg, p.keyMap.Cancel):
 			if p.session.ID != "" {
-				// Cancel the current session's generation process
-				// This allows users to interrupt long-running operations
-				p.app.CoderAgent.Cancel(p.session.ID)
-				return p, nil
+				if p.cancelPending {
+					// Second ESC press - actually cancel the session
+					p.cancelPending = false
+					p.app.CoderAgent.Cancel(p.session.ID)
+					return p, nil
+				} else {
+					// First ESC press - start the timer
+					p.cancelPending = true
+					return p, p.cancelTimerCmd()
+				}
 			}
 		case key.Matches(msg, p.keyMap.Details):
 			if p.session.ID == "" || !p.compactMode {
@@ -336,7 +356,14 @@ func (p *chatPage) Bindings() []key.Binding {
 		p.keyMap.AddAttachment,
 	}
 	if p.app.CoderAgent.IsBusy() {
-		bindings = append([]key.Binding{p.keyMap.Cancel}, bindings...)
+		cancelBinding := p.keyMap.Cancel
+		if p.cancelPending {
+			cancelBinding = key.NewBinding(
+				key.WithKeys("esc"),
+				key.WithHelp("esc", "press again to cancel"),
+			)
+		}
+		bindings = append([]key.Binding{cancelBinding}, bindings...)
 	}
 
 	if p.chatFocused {
  
  
  
    
    @@ -14,9 +14,10 @@ func NewCrushTheme() *Theme {
 		Tertiary:  charmtone.Bok,
 		Accent:    charmtone.Zest,
 		// Backgrounds
-		BgBase:    charmtone.Pepper,
-		BgSubtle:  charmtone.Charcoal,
-		BgOverlay: charmtone.Iron,
+		BgBase:        charmtone.Pepper,
+		BgBaseLighter: Lighten(charmtone.Pepper, 2),
+		BgSubtle:      charmtone.Charcoal,
+		BgOverlay:     charmtone.Iron,
 
 		// Foregrounds
 		FgBase:      charmtone.Ash,
@@ -38,7 +39,10 @@ func NewCrushTheme() *Theme {
 		// Colors
 		White: charmtone.Butter,
 
-		Blue: charmtone.Malibu,
+		BlueLight: charmtone.Sardine,
+		Blue:      charmtone.Malibu,
+
+		Yellow: charmtone.Mustard,
 
 		Green:      charmtone.Julep,
 		GreenDark:  charmtone.Guac,
  
  
  
    
    @@ -10,6 +10,7 @@ import (
 	"github.com/charmbracelet/bubbles/v2/textarea"
 	"github.com/charmbracelet/bubbles/v2/textinput"
 	tea "github.com/charmbracelet/bubbletea/v2"
+	"github.com/charmbracelet/crush/internal/exp/diffview"
 	"github.com/charmbracelet/glamour/v2/ansi"
 	"github.com/charmbracelet/lipgloss/v2"
 	"github.com/lucasb-eyer/go-colorful"
@@ -31,9 +32,10 @@ type Theme struct {
 	Tertiary  color.Color
 	Accent    color.Color
 
-	BgBase    color.Color
-	BgSubtle  color.Color
-	BgOverlay color.Color
+	BgBase        color.Color
+	BgBaseLighter color.Color
+	BgSubtle      color.Color
+	BgOverlay     color.Color
 
 	FgBase      color.Color
 	FgMuted     color.Color
@@ -52,8 +54,13 @@ type Theme struct {
 	// Colors
 	// White
 	White color.Color
+
 	// Blues
-	Blue color.Color
+	BlueLight color.Color
+	Blue      color.Color
+
+	// Yellows
+	Yellow color.Color
 
 	// Greens
 	Green      color.Color
@@ -65,26 +72,9 @@ type Theme struct {
 	RedDark  color.Color
 	RedLight color.Color
 
-	// TODO: add any others needed
-
 	styles *Styles
 }
 
-type Diff struct {
-	Added               color.Color
-	Removed             color.Color
-	Context             color.Color
-	HunkHeader          color.Color
-	HighlightAdded      color.Color
-	HighlightRemoved    color.Color
-	AddedBg             color.Color
-	RemovedBg           color.Color
-	ContextBg           color.Color
-	LineNumber          color.Color
-	AddedLineNumberBg   color.Color
-	RemovedLineNumberBg color.Color
-}
-
 type Styles struct {
 	Base         lipgloss.Style
 	SelectedBase lipgloss.Style
@@ -112,7 +102,7 @@ type Styles struct {
 	Help help.Styles
 
 	// Diff
-	Diff Diff
+	Diff diffview.Style
 
 	// FilePicker
 	FilePicker filepicker.Styles
@@ -421,22 +411,50 @@ func (t *Theme) buildStyles() *Styles {
 			FullSeparator:  base.Foreground(t.Border),
 		},
 
-		// TODO: Fix this this is bad
-		Diff: Diff{
-			Added:               t.Green,
-			Removed:             t.Red,
-			Context:             t.FgSubtle,
-			HunkHeader:          t.FgSubtle,
-			HighlightAdded:      t.GreenLight,
-			HighlightRemoved:    t.RedLight,
-			AddedBg:             t.GreenDark,
-			RemovedBg:           t.RedDark,
-			ContextBg:           t.BgSubtle,
-			LineNumber:          t.FgMuted,
-			AddedLineNumberBg:   t.GreenDark,
-			RemovedLineNumberBg: t.RedDark,
+		Diff: diffview.Style{
+			DividerLine: diffview.LineStyle{
+				LineNumber: lipgloss.NewStyle().
+					Foreground(t.FgHalfMuted).
+					Background(t.BgBaseLighter),
+				Code: lipgloss.NewStyle().
+					Foreground(t.FgHalfMuted).
+					Background(t.BgBaseLighter),
+			},
+			MissingLine: diffview.LineStyle{
+				LineNumber: lipgloss.NewStyle().
+					Background(t.BgBaseLighter),
+				Code: lipgloss.NewStyle().
+					Background(t.BgBaseLighter),
+			},
+			EqualLine: diffview.LineStyle{
+				LineNumber: lipgloss.NewStyle().
+					Foreground(t.FgMuted).
+					Background(t.BgBase),
+				Code: lipgloss.NewStyle().
+					Foreground(t.FgMuted).
+					Background(t.BgBase),
+			},
+			InsertLine: diffview.LineStyle{
+				LineNumber: lipgloss.NewStyle().
+					Foreground(lipgloss.Color("#629657")).
+					Background(lipgloss.Color("#2b322a")),
+				Symbol: lipgloss.NewStyle().
+					Foreground(lipgloss.Color("#629657")).
+					Background(lipgloss.Color("#323931")),
+				Code: lipgloss.NewStyle().
+					Background(lipgloss.Color("#323931")),
+			},
+			DeleteLine: diffview.LineStyle{
+				LineNumber: lipgloss.NewStyle().
+					Foreground(lipgloss.Color("#a45c59")).
+					Background(lipgloss.Color("#312929")),
+				Symbol: lipgloss.NewStyle().
+					Foreground(lipgloss.Color("#a45c59")).
+					Background(lipgloss.Color("#383030")),
+				Code: lipgloss.NewStyle().
+					Background(lipgloss.Color("#383030")),
+			},
 		},
-
 		FilePicker: filepicker.Styles{
 			DisabledCursor:   base.Foreground(t.FgMuted),
 			Cursor:           base.Foreground(t.FgBase),
  
  
  
    
    @@ -94,12 +94,6 @@ func (a *appModel) Update(msg tea.Msg) (tea.Model, tea.Cmd) {
 
 	switch msg := msg.(type) {
 	case tea.KeyboardEnhancementsMsg:
-		logging.Info(
-			"Keyboard enhancements detected",
-			"Disambiguation", msg.SupportsKeyDisambiguation(),
-			"ReleaseKeys", msg.SupportsKeyReleases(),
-			"UniformKeys", msg.SupportsUniformKeyLayout(),
-		)
 		return a, nil
 	case tea.WindowSizeMsg:
 		return a, a.handleWindowResize(msg.Width, msg.Height)
@@ -260,7 +254,7 @@ func (a *appModel) handleWindowResize(width, height int) tea.Cmd {
 	var cmds []tea.Cmd
 	a.wWidth, a.wHeight = width, height
 	if a.showingFullHelp {
-		height -= 3
+		height -= 4
 	} else {
 		height -= 2
 	}
  
  
  
    
    @@ -20,7 +20,16 @@
 - [ ] Parallel tool calls and permissions
   - [ ] Run the tools in parallel and add results in parallel
   - [ ] Show multiple permissions dialogs
+- [ ] Add another space around buttons
+- [ ] Completions
+  - [ ] Should change the help to show the completions stuff
+  - [ ] Should make it wider
+  - [ ] Tab and ctrl+y should accept
+  - [ ] Words should line up
+  - [ ] If there are no completions and cick tab/ctrl+y/enter it should close it
 - [ ] Investigate messages issues
+  - [ ] Make the agent separator look like the
+  - [ ] Cleanup tool calls (watch all states)
   - [ ] Weird behavior sometimes the message does not update
   - [ ] Message length (I saw the message go beyond the correct length when there are errors)
   - [ ] Address UX issues