diff --git a/area_printer_test.go b/area_printer_test.go index cc5e5a91a..f0895e715 100644 --- a/area_printer_test.go +++ b/area_printer_test.go @@ -18,6 +18,10 @@ func TestAreaPrinter_NilPrint(t *testing.T) { os.Stdout = originalStdout // Restore original os.Stdout } +func TestAreaPrinter_WithMethods(t *testing.T) { + testWithMethods(t, pterm.AreaPrinter{}) +} + func TestAreaPrinter_GenericStart(t *testing.T) { originalStdout := os.Stdout os.Stdout = os.NewFile(0, os.DevNull) // Set os.Stdout to DevNull to hide output from cursor.Area @@ -90,30 +94,6 @@ func TestAreaPrinter_GetContent(t *testing.T) { os.Stdout = originalStdout // Restore original os.Stdout } -func TestAreaPrinter_WithRemoveWhenDone(t *testing.T) { - originalStdout := os.Stdout - os.Stdout = os.NewFile(0, os.DevNull) // Set os.Stdout to DevNull to hide output from cursor.Area - - p := pterm.AreaPrinter{} - p2 := p.WithRemoveWhenDone() - - testza.AssertTrue(t, p2.RemoveWhenDone) - - os.Stdout = originalStdout // Restore original os.Stdout -} - -func TestAreaPrinter_WithFullscreen(t *testing.T) { - originalStdout := os.Stdout - os.Stdout = os.NewFile(0, os.DevNull) // Set os.Stdout to DevNull to hide output from cursor.Area - - p := pterm.AreaPrinter{} - p2 := p.WithFullscreen() - - testza.AssertTrue(t, p2.Fullscreen) - - os.Stdout = originalStdout // Restore original os.Stdout -} - func TestAreaPrinter_Clear(t *testing.T) { originalStdout := os.Stdout os.Stdout = os.NewFile(0, os.DevNull) // Set os.Stdout to DevNull to hide output from cursor.Area diff --git a/atoms_test.go b/atoms_test.go index 6a76c39a5..9fb2419d8 100644 --- a/atoms_test.go +++ b/atoms_test.go @@ -1,44 +1,10 @@ package pterm_test import ( - "testing" - - "github.com/MarvinJWendt/testza" "github.com/pterm/pterm" + "testing" ) -func TestBar_WithLabel(t *testing.T) { - p := pterm.Bar{} - s := "X" - p2 := p.WithLabel(s) - - testza.AssertEqual(t, s, p2.Label) - testza.AssertZero(t, p.Label) -} - -func TestBar_WithStyle(t *testing.T) { - p := pterm.Bar{} - s := pterm.NewStyle(pterm.FgRed, pterm.BgBlue, pterm.Bold) - p2 := p.WithStyle(s) - - testza.AssertEqual(t, s, p2.Style) - testza.AssertZero(t, p.Style) -} - -func TestBar_WithValue(t *testing.T) { - p := pterm.Bar{} - s := 1337 - p2 := p.WithValue(s) - - testza.AssertEqual(t, s, p2.Value) - testza.AssertZero(t, p.Value) -} - -func TestBar_WithLabelStyle(t *testing.T) { - p := pterm.Bar{} - s := pterm.NewStyle(pterm.FgRed, pterm.BgBlue, pterm.Bold) - p2 := p.WithLabelStyle(s) - - testza.AssertEqual(t, s, p2.LabelStyle) - testza.AssertZero(t, p.LabelStyle) +func TestBar_WithMethods(t *testing.T) { + testWithMethods(t, pterm.Bar{}) } diff --git a/barchart_test.go b/barchart_test.go index c1c6df03c..4a7eb50d8 100644 --- a/barchart_test.go +++ b/barchart_test.go @@ -1,10 +1,8 @@ package pterm_test import ( - "os" "testing" - "github.com/MarvinJWendt/testza" "github.com/pterm/pterm" ) @@ -17,6 +15,10 @@ func TestBarChartPrinterNilPrint(t *testing.T) { } } +func TestBarChartPrinter_WithMethods(t *testing.T) { + testWithMethods(t, pterm.BarChartPrinter{}) +} + func TestBarChartPrinter_NilStylePrint(t *testing.T) { bars := pterm.Bars{ pterm.Bar{ @@ -364,86 +366,3 @@ func TestBarChartPrinter_Render(t *testing.T) { }, }).Render() } - -func TestBarChartPrinter_WithHorizontalBarCharacter(t *testing.T) { - p := pterm.BarChartPrinter{} - s := "X" - p2 := p.WithHorizontalBarCharacter(s) - - testza.AssertEqual(t, s, p2.HorizontalBarCharacter) - testza.AssertZero(t, p.HorizontalBarCharacter) -} - -func TestBarChartPrinter_WithVerticalBarCharacter(t *testing.T) { - p := pterm.BarChartPrinter{} - s := "X" - p2 := p.WithVerticalBarCharacter(s) - - testza.AssertEqual(t, s, p2.VerticalBarCharacter) - testza.AssertZero(t, p.VerticalBarCharacter) -} - -func TestBarChartPrinter_WithBars(t *testing.T) { - p := pterm.BarChartPrinter{} - s := pterm.Bars{ - pterm.Bar{ - Label: "Test", - Value: 1337, - Style: pterm.NewStyle(pterm.FgRed, pterm.BgBlue, pterm.Bold), - }, - pterm.Bar{ - Label: "Test", - Value: 1337, - Style: pterm.NewStyle(pterm.FgRed, pterm.BgBlue, pterm.Bold), - }, - } - p2 := p.WithBars(s) - - testza.AssertEqual(t, s, p2.Bars) - testza.AssertZero(t, p.Bars) -} - -func TestBarChartPrinter_WithHeight(t *testing.T) { - p := pterm.BarChartPrinter{} - s := 1337 - p2 := p.WithHeight(s) - - testza.AssertEqual(t, s, p2.Height) - testza.AssertZero(t, p.Height) -} - -func TestBarChartPrinter_WithHorizontal(t *testing.T) { - p := pterm.BarChartPrinter{} - s := true - p2 := p.WithHorizontal(s) - - testza.AssertEqual(t, s, p2.Horizontal) - testza.AssertZero(t, p.Horizontal) -} - -func TestBarChartPrinter_WithShowValue(t *testing.T) { - p := pterm.BarChartPrinter{} - s := true - p2 := p.WithShowValue(s) - - testza.AssertEqual(t, s, p2.ShowValue) - testza.AssertZero(t, p.ShowValue) -} - -func TestBarChartPrinter_WithWidth(t *testing.T) { - p := pterm.BarChartPrinter{} - s := 1337 - p2 := p.WithWidth(s) - - testza.AssertEqual(t, s, p2.Width) - testza.AssertZero(t, p.Width) -} - -func TestBarChartPrinter_WithWriter(t *testing.T) { - p := pterm.BarChartPrinter{} - s := os.Stderr - p2 := p.WithWriter(s) - - testza.AssertEqual(t, s, p2.Writer) - testza.AssertZero(t, p.Writer) -} diff --git a/basic_text_printer_test.go b/basic_text_printer_test.go index c73c67338..6ffc3b578 100644 --- a/basic_text_printer_test.go +++ b/basic_text_printer_test.go @@ -3,7 +3,6 @@ package pterm_test import ( "errors" "io" - "os" "testing" "github.com/MarvinJWendt/testza" @@ -17,6 +16,10 @@ func TestBasicTextPrinterNilPrint(t *testing.T) { p.Println("Hello, World!") } +func TestBasicTextPrinter_WithMethods(t *testing.T) { + testWithMethods(t, pterm.BasicTextPrinter{}) +} + func TestBasicTextPrinterPrintMethods(t *testing.T) { p := pterm.DefaultBasicText @@ -96,20 +99,3 @@ func TestBasicTextPrinterPrintMethods(t *testing.T) { testza.AssertZero(t, result) }) } - -func TestBasicTextPrinter_WithStyle(t *testing.T) { - s := pterm.NewStyle(pterm.FgRed, pterm.BgBlue, pterm.Bold) - p := pterm.BasicTextPrinter{} - p2 := p.WithStyle(s) - - testza.AssertEqual(t, s, p2.Style) -} - -func TestBasicTextPrinter_WithWriter(t *testing.T) { - p := pterm.BasicTextPrinter{} - s := os.Stderr - p2 := p.WithWriter(s) - - testza.AssertEqual(t, s, p2.Writer) - testza.AssertZero(t, p.Writer) -} diff --git a/bigtext_printer_test.go b/bigtext_printer_test.go index 94113e2e9..ec506eaf4 100644 --- a/bigtext_printer_test.go +++ b/bigtext_printer_test.go @@ -2,7 +2,6 @@ package pterm_test import ( "fmt" - "os" "strings" "testing" @@ -16,6 +15,10 @@ func TestBigTextPrinterNilPrint(t *testing.T) { p.Render() } +func TestBigTextPrinter_WithMethods(t *testing.T) { + testWithMethods(t, pterm.BigTextPrinter{}) +} + func TestBigTextPrinter_Render(t *testing.T) { printer := pterm.DefaultBigText.WithLetters(pterm.NewLettersFromString("Hello")) content, err := printer.Srender() @@ -43,60 +46,6 @@ func TestBigTextPrinter_RenderRawOutput(t *testing.T) { testza.AssertNotZero(t, content) } -func TestBigTextPrinter_WithBigCharacters(t *testing.T) { - e := map[string]string{"a": "b", "c": "d"} - p := pterm.BigTextPrinter{} - p2 := p.WithBigCharacters(e) - - testza.AssertEqual(t, e, p2.BigCharacters) - testza.AssertZero(t, p.BigCharacters) -} - -func TestBigTextPrinter_WithLetters(t *testing.T) { - e := pterm.Letters{ - pterm.Letter{ - String: "test", - Style: pterm.NewStyle(pterm.FgRed, pterm.BgBlue, pterm.Bold), - }, - pterm.Letter{ - String: "test2", - Style: pterm.NewStyle(pterm.FgRed, pterm.BgBlue, pterm.Bold), - }, - } - p := pterm.BigTextPrinter{} - p2 := p.WithLetters(e) - - testza.AssertEqual(t, e, p2.Letters) - testza.AssertZero(t, p.Letters) -} - -func TestLetter_WithString(t *testing.T) { - e := "Hello, World!" - p := pterm.Letter{} - p2 := p.WithString(e) - - testza.AssertEqual(t, e, p2.String) - testza.AssertZero(t, p.String) -} - -func TestLetter_WithStyle(t *testing.T) { - p := pterm.Letter{} - s := pterm.NewStyle(pterm.FgRed, pterm.BgRed, pterm.Bold) - p2 := p.WithStyle(s) - - testza.AssertEqual(t, s, p2.Style) - testza.AssertZero(t, p.Style) -} - -func TestLetter_WithRGB(t *testing.T) { - p := pterm.Letter{} - rgb := pterm.NewRGB(0, 0, 0) - p2 := p.WithRGB(rgb) - - testza.AssertEqual(t, rgb, p2.RGB) - testza.AssertZero(t, p.RGB) -} - func TestNewLettersFromText(t *testing.T) { e := pterm.Letters{ pterm.Letter{ @@ -155,12 +104,3 @@ func TestDefaultLettersMaxHeight(t *testing.T) { testza.AssertTrue(t, h <= maxHeight, fmt.Sprintf("'%s' is too high", s)) } } - -func TestBigTextPrinter_WithWriter(t *testing.T) { - p := pterm.BigTextPrinter{} - s := os.Stderr - p2 := p.WithWriter(s) - - testza.AssertEqual(t, s, p2.Writer) - testza.AssertZero(t, p.Writer) -} diff --git a/box_printer_test.go b/box_printer_test.go index add0ac71a..fde395ee6 100644 --- a/box_printer_test.go +++ b/box_printer_test.go @@ -3,7 +3,6 @@ package pterm_test import ( "errors" "io" - "os" "testing" "github.com/MarvinJWendt/testza" @@ -16,6 +15,10 @@ func TestBoxPrinterNilPrint(t *testing.T) { p.Println("Hello, World!") } +func TestBoxPrinter_WithMethods(t *testing.T) { + testWithMethods(t, pterm.BoxPrinter{}) +} + func TestBoxPrinterPrintMethods(t *testing.T) { p := pterm.DefaultBox @@ -107,240 +110,3 @@ func TestBoxPrinterPrintMethods(t *testing.T) { testza.AssertZero(t, result) }) } - -func TestBoxPrinter_WithBottomLeftCornerString(t *testing.T) { - p := pterm.BoxPrinter{} - p2 := p.WithBottomLeftCornerString("-") - - testza.AssertEqual(t, "-", p2.BottomLeftCornerString) - testza.AssertZero(t, p.BottomLeftCornerString) -} - -func TestBoxPrinter_WithBottomPadding(t *testing.T) { - p := pterm.BoxPrinter{} - p2 := p.WithBottomPadding(5) - - testza.AssertEqual(t, 5, p2.BottomPadding) - testza.AssertZero(t, p.BottomPadding) -} - -func TestBoxPrinter_WithBottomRightCornerString(t *testing.T) { - p := pterm.BoxPrinter{} - p2 := p.WithBottomRightCornerString("-") - - testza.AssertEqual(t, "-", p2.BottomRightCornerString) - testza.AssertZero(t, p.BottomRightCornerString) -} - -func TestBoxPrinter_WithTitle(t *testing.T) { - p := pterm.BoxPrinter{} - p2 := p.WithTitle("-") - - testza.AssertEqual(t, "-", p2.Title) - testza.AssertZero(t, p.Title) -} - -func TestBoxPrinter_WithTitleTopLeft(t *testing.T) { - p := pterm.BoxPrinter{} - p2 := p.WithTitleTopLeft() - - testza.AssertEqual(t, true, p2.TitleTopLeft) - testza.AssertEqual(t, false, p.TitleTopLeft) -} - -func TestBoxPrinter_WithTitleTopRight(t *testing.T) { - p := pterm.BoxPrinter{} - p2 := p.WithTitleTopRight() - - testza.AssertEqual(t, true, p2.TitleTopRight) - testza.AssertEqual(t, false, p.TitleTopRight) -} - -func TestBoxPrinter_WithTitleTopCenter(t *testing.T) { - p := pterm.BoxPrinter{} - p2 := p.WithTitleTopCenter() - - testza.AssertEqual(t, true, p2.TitleTopCenter) - testza.AssertEqual(t, false, p.TitleTopCenter) -} - -func TestBoxPrinter_WithTitleBottomRight(t *testing.T) { - p := pterm.BoxPrinter{} - p2 := p.WithTitleBottomRight() - - testza.AssertEqual(t, true, p2.TitleBottomRight) - testza.AssertEqual(t, false, p.TitleBottomRight) -} - -func TestBoxPrinter_WithTitleBottomLeft(t *testing.T) { - p := pterm.BoxPrinter{} - p2 := p.WithTitleBottomLeft() - - testza.AssertEqual(t, true, p2.TitleBottomLeft) - testza.AssertEqual(t, false, p.TitleBottomLeft) -} - -func TestBoxPrinter_WithTitleBottomCenter(t *testing.T) { - p := pterm.BoxPrinter{} - p2 := p.WithTitleBottomCenter() - - testza.AssertEqual(t, true, p2.TitleBottomCenter) - testza.AssertEqual(t, false, p.TitleBottomCenter) -} - -func TestBoxPrinter_WithTitleWithTitleBottomLeft(t *testing.T) { - p := pterm.BoxPrinter{} - p2 := p.WithTitleBottomLeft().WithTitle("a").Sprint("Lorem Ipsum") - - testza.AssertContains(t, p2, "Lorem Ipsum") -} - -func TestBoxPrinter_WithTitleWithTitleTopLeft(t *testing.T) { - p := pterm.BoxPrinter{} - p2 := p.WithTitleTopLeft().WithTitle("a").Sprint("Lorem Ipsum") - - testza.AssertContains(t, p2, "Lorem Ipsum") -} - -func TestBoxPrinter_WithTitleWithTitleBottomRight(t *testing.T) { - p := pterm.BoxPrinter{} - p2 := p.WithTitleBottomRight().WithTitle("a").Sprint("Lorem Ipsum") - - testza.AssertContains(t, p2, "Lorem Ipsum") -} - -func TestBoxPrinter_WithTitleWithTitleTopRight(t *testing.T) { - p := pterm.BoxPrinter{} - p2 := p.WithTitleTopRight().WithTitle("a").Sprint("Lorem Ipsum") - - testza.AssertContains(t, p2, "Lorem Ipsum") -} - -func TestBoxPrinter_WithTitleWithTitleTopCenter(t *testing.T) { - p := pterm.BoxPrinter{} - p2 := p.WithTitleTopCenter().WithTitle("a").Sprint("Lorem Ipsum") - - testza.AssertContains(t, p2, "Lorem Ipsum") -} - -func TestBoxPrinter_WithTitleWithTitleBottomCenter(t *testing.T) { - p := pterm.BoxPrinter{} - p2 := p.WithTitleBottomCenter().WithTitle("a").Sprint("Lorem Ipsum") - - testza.AssertContains(t, p2, "Lorem Ipsum") -} - -func TestBoxPrinter_WithBoxStyle(t *testing.T) { - p := pterm.BoxPrinter{} - s := pterm.NewStyle(pterm.FgRed, pterm.BgRed, pterm.Bold) - p2 := p.WithBoxStyle(s) - - testza.AssertEqual(t, s, p2.BoxStyle) - testza.AssertZero(t, p.BoxStyle) -} - -func TestBoxPrinter_WithLeftPadding(t *testing.T) { - p := pterm.BoxPrinter{} - p2 := p.WithLeftPadding(5) - - testza.AssertEqual(t, 5, p2.LeftPadding) - testza.AssertZero(t, p.LeftPadding) -} - -func TestBoxPrinter_WithRightPadding(t *testing.T) { - p := pterm.BoxPrinter{} - p2 := p.WithRightPadding(5) - - testza.AssertEqual(t, 5, p2.RightPadding) - testza.AssertZero(t, p.RightPadding) -} - -func TestBoxPrinter_WithTextStyle(t *testing.T) { - p := pterm.BoxPrinter{} - s := pterm.NewStyle(pterm.FgRed, pterm.BgRed, pterm.Bold) - p2 := p.WithTextStyle(s) - - testza.AssertEqual(t, s, p2.TextStyle) - testza.AssertZero(t, p.TextStyle) -} - -func TestBoxPrinter_WithTopLeftCornerString(t *testing.T) { - p := pterm.BoxPrinter{} - p2 := p.WithTopLeftCornerString("-") - - testza.AssertEqual(t, "-", p2.TopLeftCornerString) - testza.AssertZero(t, p.TopLeftCornerString) -} - -func TestBoxPrinter_WithTopPadding(t *testing.T) { - p := pterm.BoxPrinter{} - p2 := p.WithTopPadding(5) - - testza.AssertEqual(t, 5, p2.TopPadding) - testza.AssertZero(t, p.TopPadding) -} - -func TestBoxPrinter_WithInvalidTopPadding(t *testing.T) { - p := pterm.BoxPrinter{} - p2 := p.WithTopPadding(-5) - - testza.AssertEqual(t, 0, p2.TopPadding) - testza.AssertZero(t, p.TopPadding) -} - -func TestBoxPrinter_WithInvalidBottomPadding(t *testing.T) { - p := pterm.BoxPrinter{} - p2 := p.WithBottomPadding(-5) - - testza.AssertEqual(t, 0, p2.BottomPadding) - testza.AssertZero(t, p.BottomPadding) -} - -func TestBoxPrinter_WithInvalidLeftPadding(t *testing.T) { - p := pterm.BoxPrinter{} - p2 := p.WithLeftPadding(-5) - - testza.AssertEqual(t, 0, p2.LeftPadding) - testza.AssertZero(t, p.LeftPadding) -} - -func TestBoxPrinter_WithInvalidRightPadding(t *testing.T) { - p := pterm.BoxPrinter{} - p2 := p.WithRightPadding(-5) - - testza.AssertEqual(t, 0, p2.RightPadding) - testza.AssertZero(t, p.RightPadding) -} - -func TestBoxPrinter_WithTopRightCornerString(t *testing.T) { - p := pterm.BoxPrinter{} - p2 := p.WithTopRightCornerString("-") - - testza.AssertEqual(t, "-", p2.TopRightCornerString) - testza.AssertZero(t, p.TopRightCornerString) -} - -func TestBoxPrinter_WithVerticalString(t *testing.T) { - p := pterm.BoxPrinter{} - p2 := p.WithVerticalString("-") - - testza.AssertEqual(t, "-", p2.VerticalString) - testza.AssertZero(t, p.VerticalString) -} - -func TestBoxPrinter_WithHorizontalString(t *testing.T) { - p := pterm.BoxPrinter{} - p2 := p.WithHorizontalString("-") - - testza.AssertEqual(t, "-", p2.HorizontalString) - testza.AssertZero(t, p.HorizontalString) -} - -func TestBoxPrinter_WithWriter(t *testing.T) { - p := pterm.BoxPrinter{} - s := os.Stderr - p2 := p.WithWriter(s) - - testza.AssertEqual(t, s, p2.Writer) - testza.AssertZero(t, p.Writer) -} diff --git a/bulletlist_printer_test.go b/bulletlist_printer_test.go index 3917c5e4f..37289f655 100644 --- a/bulletlist_printer_test.go +++ b/bulletlist_printer_test.go @@ -3,7 +3,6 @@ package pterm_test import ( "fmt" "io" - "os" "testing" "github.com/MarvinJWendt/testza" @@ -15,6 +14,10 @@ func TestBulletListPrinterNilPrint(t *testing.T) { p.Render() } +func TestBulletListPrinter_WithMethods(t *testing.T) { + testWithMethods(t, pterm.BulletListPrinter{}) +} + func TestBulletListPrinter_Render(t *testing.T) { testPrintContains(t, func(w io.Writer, a interface{}) { pterm.DefaultBulletList.WithItems([]pterm.BulletListItem{ @@ -51,89 +54,6 @@ func TestBulletListPrinter_Srender(t *testing.T) { }) } -func TestBulletListPrinter_WithBullet(t *testing.T) { - p := pterm.BulletListPrinter{} - p2 := p.WithBullet("-") - - testza.AssertEqual(t, "-", p2.Bullet) - testza.AssertZero(t, p.Bullet) -} - -func TestBulletListPrinter_WithBulletStyle(t *testing.T) { - p := pterm.BulletListPrinter{} - s := pterm.NewStyle(pterm.FgRed, pterm.BgRed, pterm.Bold) - p2 := p.WithBulletStyle(s) - - testza.AssertEqual(t, s, p2.BulletStyle) - testza.AssertZero(t, p.BulletStyle) -} - -func TestBulletListPrinter_WithItems(t *testing.T) { - p := pterm.BulletListPrinter{} - li := []pterm.BulletListItem{{ - Level: 0, - Text: "test", - TextStyle: nil, - Bullet: "+", - BulletStyle: nil, - }} - p2 := p.WithItems(li) - - testza.AssertEqual(t, li, p2.Items) - testza.AssertZero(t, p.Items) -} - -func TestBulletListPrinter_WithTextStyle(t *testing.T) { - p := pterm.BulletListPrinter{} - s := pterm.NewStyle(pterm.FgRed, pterm.BgRed, pterm.Bold) - p2 := p.WithTextStyle(s) - - testza.AssertEqual(t, s, p2.TextStyle) - testza.AssertZero(t, p.TextStyle) -} - -func TestBulletListItem_WithBullet(t *testing.T) { - p := pterm.BulletListItem{} - p2 := p.WithBullet("-") - - testza.AssertEqual(t, "-", p2.Bullet) - testza.AssertZero(t, p.Bullet) -} - -func TestBulletListItem_WithBulletStyle(t *testing.T) { - p := pterm.BulletListItem{} - s := pterm.NewStyle(pterm.FgRed, pterm.BgRed, pterm.Bold) - p2 := p.WithBulletStyle(s) - - testza.AssertEqual(t, s, p2.BulletStyle) - testza.AssertZero(t, p.BulletStyle) -} - -func TestBulletListItem_WithLevel(t *testing.T) { - p := pterm.BulletListItem{} - p2 := p.WithLevel(1) - - testza.AssertEqual(t, 1, p2.Level) - testza.AssertZero(t, p.Level) -} - -func TestBulletListItem_WithText(t *testing.T) { - p := pterm.BulletListItem{} - p2 := p.WithText("test") - - testza.AssertEqual(t, "test", p2.Text) - testza.AssertZero(t, p.Text) -} - -func TestBulletListItem_WithTextStyle(t *testing.T) { - p := pterm.BulletListItem{} - s := pterm.NewStyle(pterm.FgRed, pterm.BgRed, pterm.Bold) - p2 := p.WithTextStyle(s) - - testza.AssertEqual(t, s, p2.TextStyle) - testza.AssertZero(t, p.TextStyle) -} - func TestNewBulletListFromString(t *testing.T) { p := *pterm.DefaultBulletList.WithItems([]pterm.BulletListItem{ {Level: 0, Text: "0"}, @@ -154,12 +74,3 @@ func TestNewBulletListFromString(t *testing.T) { testza.AssertEqual(t, p, p2) } - -func TestBulletListPrinter_WithWriter(t *testing.T) { - p := pterm.BulletListPrinter{} - s := os.Stderr - p2 := p.WithWriter(s) - - testza.AssertEqual(t, s, p2.Writer) - testza.AssertZero(t, p.Writer) -} diff --git a/center_printer_test.go b/center_printer_test.go index e9be5a307..8f45cd279 100644 --- a/center_printer_test.go +++ b/center_printer_test.go @@ -1,102 +1,28 @@ package pterm_test import ( - "errors" "io" - "os" "testing" - "github.com/MarvinJWendt/testza" - "github.com/pterm/pterm" ) -func TestCenterPrinter_WithCenterEachLineSeparately(t *testing.T) { - p := pterm.CenterPrinter{} - p2 := p.WithCenterEachLineSeparately() - - testza.AssertTrue(t, p2.CenterEachLineSeparately) - testza.AssertFalse(t, p.CenterEachLineSeparately) +func TestCenterPrinter_WithMethods(t *testing.T) { + testWithMethods(t, pterm.CenterPrinter{}) } -func TestCenterPrinterPrintMethods(t *testing.T) { - p := pterm.DefaultCenter - - t.Run("Print", func(t *testing.T) { - testPrintContains(t, func(w io.Writer, a interface{}) { - p.Print(a) - }) - }) - - t.Run("Printf", func(t *testing.T) { - testPrintfContains(t, func(w io.Writer, format string, a interface{}) { - p.Printf(format, a) - }) - }) - - t.Run("Printfln", func(t *testing.T) { - testPrintflnContains(t, func(w io.Writer, format string, a interface{}) { - p.Printfln(format, a) - }) - }) - +func TestCenterPrinter(t *testing.T) { t.Run("Println", func(t *testing.T) { - testPrintlnContains(t, func(w io.Writer, a interface{}) { - p.Println(a) + printerTest(t, func() { + pterm.DefaultCenter.Println("Lorem ipsum dolor sit amet") }) }) - t.Run("Sprint", func(t *testing.T) { - testSprintContains(t, func(a interface{}) string { - return p.Sprint(a) + t.Run("WithCenterEachLineSeparately", func(t *testing.T) { + printerTest(t, func() { + pterm.DefaultCenter.WithCenterEachLineSeparately().Println("Lorem ipsum dolor sit amet\nconsetetur sadipscing elitre\nsed diam nonumy eirmod tempor invidunt ut") }) }) - - t.Run("Sprintf", func(t *testing.T) { - testSprintfContains(t, func(format string, a interface{}) string { - return p.Sprintf(format, a) - }) - }) - - t.Run("Sprintfln", func(t *testing.T) { - testSprintflnContains(t, func(format string, a interface{}) string { - return p.Sprintfln(format, a) - }) - }) - - t.Run("Sprintln", func(t *testing.T) { - testSprintlnContains(t, func(a interface{}) string { - return p.Sprintln(a) - }) - }) - - t.Run("PrintOnError", func(t *testing.T) { - result := captureStdout(func(w io.Writer) { - p.PrintOnError(errors.New("hello world")) - }) - testza.AssertContains(t, result, "hello world") - }) - - t.Run("PrintIfError_WithoutError", func(t *testing.T) { - result := captureStdout(func(w io.Writer) { - p.PrintOnError(nil) - }) - testza.AssertZero(t, result) - }) - - t.Run("PrintOnErrorf", func(t *testing.T) { - result := captureStdout(func(w io.Writer) { - p.PrintOnErrorf("wrapping error : %w", errors.New("hello world")) - }) - testza.AssertContains(t, result, "hello world") - }) - - t.Run("PrintIfError_WithoutErrorf", func(t *testing.T) { - result := captureStdout(func(w io.Writer) { - p.PrintOnErrorf("", nil) - }) - testza.AssertZero(t, result) - }) } func TestCenterPrinterPrintMethodsCenterSeparately(t *testing.T) { @@ -138,26 +64,3 @@ func TestCenterPrinterPrintMethodsCenterSeparately(t *testing.T) { }) }) } - -func TestCenterPrinter_SprintLineLongerThanTerminal(t *testing.T) { - p := pterm.DefaultCenter - p2 := p.Sprint("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa") - - testza.AssertContains(t, p2, "a") -} - -func TestCenterPrinter_SprintLineLongerThanTerminalWithCenterEachLineSeparately(t *testing.T) { - p := pterm.DefaultCenter - p2 := p.WithCenterEachLineSeparately().Sprint("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa") - - testza.AssertContains(t, p2, "a") -} - -func TestCenterPrinter_WithWriter(t *testing.T) { - p := pterm.CenterPrinter{} - s := os.Stderr - p2 := p.WithWriter(s) - - testza.AssertEqual(t, s, p2.Writer) - testza.AssertZero(t, p.Writer) -} diff --git a/go.mod b/go.mod index 449ed36da..e0392ac45 100644 --- a/go.mod +++ b/go.mod @@ -16,6 +16,7 @@ require ( require ( atomicgo.dev/assert v0.0.2 // indirect + github.com/brianvoe/gofakeit/v6 v6.21.0 // indirect github.com/containerd/console v1.0.3 // indirect github.com/davecgh/go-spew v1.1.1 // indirect github.com/klauspost/cpuid/v2 v2.2.3 // indirect diff --git a/go.sum b/go.sum index 8b5851d0e..481f19c9b 100644 --- a/go.sum +++ b/go.sum @@ -16,6 +16,8 @@ github.com/MarvinJWendt/testza v0.4.2/go.mod h1:mSdhXiKH8sg/gQehJ63bINcCKp7RtYew github.com/MarvinJWendt/testza v0.5.2 h1:53KDo64C1z/h/d/stCYCPY69bt/OSwjq5KpFNwi+zB4= github.com/MarvinJWendt/testza v0.5.2/go.mod h1:xu53QFE5sCdjtMCKk8YMQ2MnymimEctc4n3EjyIYvEY= github.com/atomicgo/cursor v0.0.1/go.mod h1:cBON2QmmrysudxNBFthvMtN32r3jxVRIvzkUiF/RuIk= +github.com/brianvoe/gofakeit/v6 v6.21.0 h1:tNkm9yxEbpuPK8Bx39tT4sSc5i9SUGiciLdNix+VDQY= +github.com/brianvoe/gofakeit/v6 v6.21.0/go.mod h1:Ow6qC71xtwm79anlwKRlWZW6zVq9D2XHE4QSSMP/rU8= github.com/containerd/console v1.0.3 h1:lIr7SlA5PxZyMV30bDW0MGbiOPXwc63yRuCP0ARubLw= github.com/containerd/console v1.0.3/go.mod h1:7LqA/THxQ86k76b8c/EMSiaJ3h1eZkMkXar0TQ1gf3U= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= diff --git a/header_printer_test.go b/header_printer_test.go index 6dffb4ee3..57ba399bb 100644 --- a/header_printer_test.go +++ b/header_printer_test.go @@ -3,7 +3,6 @@ package pterm_test import ( "errors" "io" - "os" "testing" "github.com/MarvinJWendt/testza" @@ -16,6 +15,10 @@ func TestHeaderPrinterNilPrint(t *testing.T) { p.Println("Hello, World!") } +func TestHeaderPrinter_WithMethods(t *testing.T) { + testWithMethods(t, pterm.HeaderPrinter{}) +} + func TestHeaderPrinterPrintMethods(t *testing.T) { p := pterm.DefaultHeader @@ -102,56 +105,3 @@ func TestHeaderPrinterPrintMethods(t *testing.T) { testza.AssertZero(t, result) }) } - -func TestHeaderPrinter_WithBackgroundStyle(t *testing.T) { - s := pterm.NewStyle(pterm.FgRed, pterm.BgGray, pterm.Bold) - p := pterm.HeaderPrinter{} - p2 := p.WithBackgroundStyle(s) - - testza.AssertEqual(t, s, p2.BackgroundStyle) -} - -func TestHeaderPrinter_WithFullWidth(t *testing.T) { - p := pterm.HeaderPrinter{} - p2 := p.WithFullWidth() - - testza.AssertEqual(t, true, p2.FullWidth) -} - -func TestHeaderPrinter_WithFullWidthToLongForTerminal(t *testing.T) { - p := pterm.HeaderPrinter{} - p2 := p.WithFullWidth().Sprint("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa") - - testza.AssertContains(t, p2, "a") -} - -func TestHeaderPrinter_ToLongForTerminal(t *testing.T) { - p := pterm.HeaderPrinter{} - p2 := p.Sprint("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa") - - testza.AssertContains(t, p2, "a") -} - -func TestHeaderPrinter_WithMargin(t *testing.T) { - p := pterm.HeaderPrinter{} - p2 := p.WithMargin(1337) - - testza.AssertEqual(t, 1337, p2.Margin) -} - -func TestHeaderPrinter_WithTextStyle(t *testing.T) { - s := pterm.NewStyle(pterm.FgRed, pterm.BgGray, pterm.Bold) - p := pterm.HeaderPrinter{} - p2 := p.WithTextStyle(s) - - testza.AssertEqual(t, s, p2.TextStyle) -} - -func TestHeaderPrinter_WithWriter(t *testing.T) { - p := pterm.HeaderPrinter{} - s := os.Stderr - p2 := p.WithWriter(s) - - testza.AssertEqual(t, s, p2.Writer) - testza.AssertZero(t, p.Writer) -} diff --git a/interactive_confirm_printer_test.go b/interactive_confirm_printer_test.go index c6320c782..b2bf8fef4 100644 --- a/interactive_confirm_printer_test.go +++ b/interactive_confirm_printer_test.go @@ -10,6 +10,10 @@ import ( "github.com/pterm/pterm" ) +func TestInteractiveConfirmPrinter_WithMethods(t *testing.T) { + testWithMethods(t, pterm.InteractiveConfirmPrinter{}) +} + func TestInteractiveConfirmPrinter_Show_yes(t *testing.T) { go func() { keyboard.SimulateKeyPress('y') @@ -26,11 +30,6 @@ func TestInteractiveConfirmPrinter_Show_no(t *testing.T) { testza.AssertFalse(t, result) } -func TestInteractiveConfirmPrinter_WithDefaultValue(t *testing.T) { - p := pterm.DefaultInteractiveConfirm.WithDefaultValue(true) - testza.AssertTrue(t, p.DefaultValue) -} - func TestInteractiveConfirmPrinter_WithDefaultValue_false(t *testing.T) { go func() { keyboard.SimulateKeyPress(keys.Enter) @@ -49,33 +48,6 @@ func TestInteractiveConfirmPrinter_WithDefaultValue_true(t *testing.T) { testza.AssertTrue(t, result) } -func TestInteractiveConfirmPrinter_WithConfirmStyle(t *testing.T) { - style := pterm.NewStyle(pterm.FgRed) - p := pterm.DefaultInteractiveConfirm.WithConfirmStyle(style) - testza.AssertEqual(t, p.ConfirmStyle, style) -} - -func TestInteractiveConfirmPrinter_WithConfirmText(t *testing.T) { - p := pterm.DefaultInteractiveConfirm.WithConfirmText("confirm") - testza.AssertEqual(t, p.ConfirmText, "confirm") -} - -func TestInteractiveConfirmPrinter_WithDefaultText(t *testing.T) { - p := pterm.DefaultInteractiveConfirm.WithDefaultText("default") - testza.AssertEqual(t, p.DefaultText, "default") -} - -func TestInteractiveConfirmPrinter_WithRejectStyle(t *testing.T) { - style := pterm.NewStyle(pterm.FgRed) - p := pterm.DefaultInteractiveConfirm.WithRejectStyle(style) - testza.AssertEqual(t, p.RejectStyle, style) -} - -func TestInteractiveConfirmPrinter_WithRejectText(t *testing.T) { - p := pterm.DefaultInteractiveConfirm.WithRejectText("reject") - testza.AssertEqual(t, p.RejectText, "reject") -} - func TestInteractiveConfirmPrinter_CustomAnswers(t *testing.T) { p := pterm.DefaultInteractiveConfirm.WithRejectText("reject").WithConfirmText("accept") tests := []struct { @@ -114,15 +86,3 @@ func TestInteractiveConfirmPrinter_CustomAnswers(t *testing.T) { }) } } - -func TestInteractiveConfirmPrinter_WithSuffixStyle(t *testing.T) { - style := pterm.NewStyle(pterm.FgRed) - p := pterm.DefaultInteractiveConfirm.WithSuffixStyle(style) - testza.AssertEqual(t, p.SuffixStyle, style) -} - -func TestInteractiveConfirmPrinter_WithTextStyle(t *testing.T) { - style := pterm.NewStyle(pterm.FgRed) - p := pterm.DefaultInteractiveConfirm.WithTextStyle(style) - testza.AssertEqual(t, p.TextStyle, style) -} diff --git a/interactive_continue_printer_test.go b/interactive_continue_printer_test.go index 8686b284c..d77fc4155 100644 --- a/interactive_continue_printer_test.go +++ b/interactive_continue_printer_test.go @@ -10,6 +10,10 @@ import ( "github.com/pterm/pterm" ) +func TestInteractiveContinuePrinter_WithMethods(t *testing.T) { + testWithMethods(t, pterm.InteractiveContinuePrinter{}, "WithDefaultValue", "WithDefaultValueIndex", "WithHandles") +} + func TestInteractiveContinuePrinter_Show_yes(t *testing.T) { go func() { keyboard.SimulateKeyPress('y') @@ -31,11 +35,6 @@ func TestInteractiveContinuePrinter_Show_no(t *testing.T) { testza.AssertEqual(t, result, "no") } -func TestInteractiveContinuePrinter_WithDefaultValueIndes(t *testing.T) { - p := pterm.DefaultInteractiveContinue.WithDefaultValueIndex(1) - testza.AssertEqual(t, p.DefaultValueIndex, 1) -} - func TestInteractiveContinuePrinter_WithDefaultValue_yes(t *testing.T) { go func() { keyboard.SimulateKeyPress(keys.Enter) @@ -74,17 +73,6 @@ func TestInteractiveContinuePrinter_WithShowShortHandles(t *testing.T) { testza.AssertEqual(t, result, "no") } -func TestInteractiveContinuePrinter_WithOptionsStyle(t *testing.T) { - style := pterm.NewStyle(pterm.FgRed) - p := pterm.DefaultInteractiveContinue.WithOptionsStyle(style) - testza.AssertEqual(t, p.OptionsStyle, style) -} - -func TestInteractiveContinuePrinter_WithOptions(t *testing.T) { - p := pterm.DefaultInteractiveContinue.WithOptions([]string{"next", "stop", "continue"}) - testza.AssertEqual(t, p.Options, []string{"next", "stop", "continue"}) -} - func TestInteractiveContinuePrinter_WithHandles(t *testing.T) { p := pterm.DefaultInteractiveContinue.WithOptions([]string{"yes", "no", "always", "never"}).WithHandles([]string{"y", "n", "a", "N"}) testza.AssertEqual(t, p.Handles, []string{"y", "n", "a", "N"}) @@ -131,11 +119,6 @@ func TestInteractiveContinuePrinter_WithHandles(t *testing.T) { testza.AssertEqual(t, result, "no") } -func TestInteractiveContinuePrinter_WithDefaultText(t *testing.T) { - p := pterm.DefaultInteractiveContinue.WithDefaultText("default") - testza.AssertEqual(t, p.DefaultText, "default") -} - func TestInteractiveContinuePrinter_CustomAnswers(t *testing.T) { p := pterm.DefaultInteractiveContinue.WithOptions([]string{"next", "stop", "continue"}) tests := []struct { @@ -169,15 +152,3 @@ func TestInteractiveContinuePrinter_CustomAnswers(t *testing.T) { }) } } - -func TestInteractiveContinuePrinter_WithSuffixStyle(t *testing.T) { - style := pterm.NewStyle(pterm.FgRed) - p := pterm.DefaultInteractiveContinue.WithSuffixStyle(style) - testza.AssertEqual(t, p.SuffixStyle, style) -} - -func TestInteractiveContinuePrinter_WithTextStyle(t *testing.T) { - style := pterm.NewStyle(pterm.FgRed) - p := pterm.DefaultInteractiveContinue.WithTextStyle(style) - testza.AssertEqual(t, p.TextStyle, style) -} diff --git a/interactive_multiselect_printer_test.go b/interactive_multiselect_printer_test.go index e34d0c8e1..a794f7cec 100644 --- a/interactive_multiselect_printer_test.go +++ b/interactive_multiselect_printer_test.go @@ -10,6 +10,10 @@ import ( "github.com/pterm/pterm" ) +func TestInteractiveMultiselectPrinter_WithMethods(t *testing.T) { + testWithMethods(t, pterm.InteractiveMultiselectPrinter{}) +} + func TestInteractiveMultiselectPrinter_Show(t *testing.T) { go func() { keyboard.SimulateKeyPress(keys.Down) @@ -31,38 +35,3 @@ func TestInteractiveMultiselectPrinter_Show_MaxHeightSlidingWindow(t *testing.T) result, _ := pterm.DefaultInteractiveMultiselect.WithOptions([]string{"a", "b", "c", "d", "e", "f"}).WithDefaultOptions([]string{"b"}).Show() testza.AssertEqual(t, []string{"b", "e"}, result) } - -func TestInteractiveMultiselectPrinter_WithDefaultText(t *testing.T) { - p := pterm.DefaultInteractiveMultiselect.WithDefaultText("default") - testza.AssertEqual(t, p.DefaultText, "default") -} - -func TestInteractiveMultiselectPrinter_WithDefaultOption(t *testing.T) { - p := pterm.DefaultInteractiveMultiselect.WithDefaultOptions([]string{"default"}) - testza.AssertEqual(t, p.DefaultOptions, []string{"default"}) -} - -func TestInteractiveMultiselectPrinter_WithOptions(t *testing.T) { - p := pterm.DefaultInteractiveMultiselect.WithOptions([]string{"a", "b", "c"}) - testza.AssertEqual(t, p.Options, []string{"a", "b", "c"}) -} - -func TestInteractiveMultiselectPrinter_WithMaxHeight(t *testing.T) { - p := pterm.DefaultInteractiveMultiselect.WithMaxHeight(1337) - testza.AssertEqual(t, p.MaxHeight, 1337) -} - -func TestInteractiveMultiselectPrinter_WithKeySelect(t *testing.T) { - p := pterm.DefaultInteractiveMultiselect.WithKeySelect(keys.Left).WithOptions([]string{"a", "b", "c"}) - testza.AssertEqual(t, p.KeySelect, keys.Left) -} - -func TestInteractiveMultiselectPrinter_WithKeyConfirm(t *testing.T) { - p := pterm.DefaultInteractiveMultiselect.WithKeyConfirm(keys.Left).WithOptions([]string{"a", "b", "c"}) - testza.AssertEqual(t, p.KeyConfirm, keys.Left) -} - -func TestInteractiveMultiselectPrinter_WithCheckmark(t *testing.T) { - p := pterm.DefaultInteractiveMultiselect.WithCheckmark(&pterm.Checkmark{Checked: "+", Unchecked: "-"}).WithOptions([]string{"a", "b", "c"}) - testza.AssertEqual(t, p.Checkmark, &pterm.Checkmark{Checked: "+", Unchecked: "-"}) -} diff --git a/interactive_select_printer_test.go b/interactive_select_printer_test.go index 5a4c5a900..81a54c3ca 100644 --- a/interactive_select_printer_test.go +++ b/interactive_select_printer_test.go @@ -10,6 +10,10 @@ import ( "github.com/pterm/pterm" ) +func TestInteractiveSelectPrinter_WithMethods(t *testing.T) { + testWithMethods(t, pterm.InteractiveSelectPrinter{}) +} + func TestInteractiveSelectPrinter_Show(t *testing.T) { go func() { keyboard.SimulateKeyPress(keys.Down) @@ -29,23 +33,3 @@ func TestInteractiveSelectPrinter_Show_MaxHeightSlidingWindow(t *testing.T) { result, _ := pterm.DefaultInteractiveSelect.WithOptions([]string{"a", "b", "c", "d", "e", "f"}).WithDefaultOption("e").Show() testza.AssertEqual(t, "c", result) } - -func TestInteractiveSelectPrinter_WithDefaultText(t *testing.T) { - p := pterm.DefaultInteractiveSelect.WithDefaultText("default") - testza.AssertEqual(t, p.DefaultText, "default") -} - -func TestInteractiveSelectPrinter_WithDefaultOption(t *testing.T) { - p := pterm.DefaultInteractiveSelect.WithDefaultOption("default") - testza.AssertEqual(t, p.DefaultOption, "default") -} - -func TestInteractiveSelectPrinter_WithOptions(t *testing.T) { - p := pterm.DefaultInteractiveSelect.WithOptions([]string{"a", "b", "c"}) - testza.AssertEqual(t, p.Options, []string{"a", "b", "c"}) -} - -func TestInteractiveSelectPrinter_WithMaxHeight(t *testing.T) { - p := pterm.DefaultInteractiveSelect.WithMaxHeight(1337) - testza.AssertEqual(t, p.MaxHeight, 1337) -} diff --git a/interactive_textinput_printer_test.go b/interactive_textinput_printer_test.go index a85fe3383..06951b4e3 100644 --- a/interactive_textinput_printer_test.go +++ b/interactive_textinput_printer_test.go @@ -3,41 +3,9 @@ package pterm_test import ( "testing" - "atomicgo.dev/keyboard" - "atomicgo.dev/keyboard/keys" - "github.com/MarvinJWendt/testza" - "github.com/pterm/pterm" ) -func TestInteractiveTextInputPrinter_WithDefaultText(t *testing.T) { - p := pterm.DefaultInteractiveTextInput.WithDefaultText("default") - testza.AssertEqual(t, p.DefaultText, "default") -} - -func TestInteractiveTextInputPrinter_WithMultiLine_true(t *testing.T) { - p := pterm.DefaultInteractiveTextInput.WithMultiLine() - testza.AssertTrue(t, p.MultiLine) -} - -func TestInteractiveTextInputPrinter_WithMultiLine_false(t *testing.T) { - p := pterm.DefaultInteractiveTextInput.WithMultiLine(false) - testza.AssertFalse(t, p.MultiLine) -} - -func TestInteractiveTextInputPrinter_WithTextStyle(t *testing.T) { - style := pterm.NewStyle(pterm.FgRed) - p := pterm.DefaultInteractiveTextInput.WithTextStyle(style) - testza.AssertEqual(t, p.TextStyle, style) -} - -func TestInteractiveTextInputPrinter_WithMask(t *testing.T) { - go func() { - keyboard.SimulateKeyPress('a') - keyboard.SimulateKeyPress('b') - keyboard.SimulateKeyPress('c') - keyboard.SimulateKeyPress(keys.Enter) - }() - result, _ := pterm.DefaultInteractiveTextInput.WithMask("*").Show() - testza.AssertEqual(t, result, "abc") +func TestInteractiveTextInputPrinter_WithMethods(t *testing.T) { + testWithMethods(t, pterm.InteractiveTextInputPrinter{}, "WithCaller") } diff --git a/logger_test.go b/logger_test.go new file mode 100644 index 000000000..d4e2652d5 --- /dev/null +++ b/logger_test.go @@ -0,0 +1,10 @@ +package pterm_test + +import ( + "github.com/pterm/pterm" + "testing" +) + +func TestLogger_WithMethods(t *testing.T) { + testWithMethods(t, pterm.Logger{}, "WithCaller", "WithTime") +} diff --git a/panel_printer_test.go b/panel_printer_test.go index 60ccdc074..84192f222 100644 --- a/panel_printer_test.go +++ b/panel_printer_test.go @@ -2,26 +2,18 @@ package pterm_test import ( "io" - "os" "testing" "github.com/MarvinJWendt/testza" "github.com/pterm/pterm" ) -func TestPanelPrinterNilPrint(t *testing.T) { - p := pterm.PanelPrinter{} - err := p.Render() - testza.AssertNoError(t, err) +func TestPanelPrinter_WithMethods(t *testing.T) { + testWithMethods(t, pterm.PanelPrinter{}) } -func TestPanelPrinterNilPrintWithPanels(t *testing.T) { - panels := pterm.Panels{ - { - {Data: "Hello, World"}, - }, - } - p := pterm.PanelPrinter{}.WithPanels(panels) +func TestPanelPrinterNilPrint(t *testing.T) { + p := pterm.PanelPrinter{} err := p.Render() testza.AssertNoError(t, err) } @@ -36,127 +28,3 @@ func TestPanelPrinter_Render(t *testing.T) { testza.AssertNoError(t, err) }) } - -func TestPanelPrinter_RenderMultiplePanels(t *testing.T) { - testPrintContains(t, func(w io.Writer, a interface{}) { - panels := pterm.Panels{ - {{Data: pterm.Sprint("a\nbc\ndef")}, {Data: pterm.Sprint("abcd")}}, - {{Data: pterm.Sprint(a)}}, - } - p := pterm.PanelPrinter{}.WithPanels(panels) - err := p.Render() - testza.AssertNoError(t, err) - }) -} - -func TestPanelPrinter_RenderMultiplePanelsWithBorder(t *testing.T) { - testPrintContains(t, func(w io.Writer, a interface{}) { - panels := pterm.Panels{ - {{Data: pterm.Sprint("a\nbc\ndef")}, {Data: pterm.Sprint("abcd")}}, - {{Data: pterm.Sprint(a)}}, - } - p := pterm.PanelPrinter{}.WithPanels(panels).WithBoxPrinter(pterm.DefaultBox) - err := p.Render() - testza.AssertNoError(t, err) - }) -} - -func TestPanelPrinter_RenderWithSameColumnWidth(t *testing.T) { - testPrintContains(t, func(w io.Writer, a interface{}) { - panels := pterm.Panels{ - {{Data: pterm.Sprint(a)}}, - {{Data: pterm.Sprint("test")}}, - {{Data: pterm.Sprint("Hello, World!")}}, - } - p := pterm.PanelPrinter{}.WithPanels(panels).WithSameColumnWidth() - err := p.Render() - testza.AssertNoError(t, err) - }) -} - -func TestPanelPrinter_RenderWithBottomPadding(t *testing.T) { - testPrintContains(t, func(w io.Writer, a interface{}) { - panels := pterm.Panels{ - {{Data: pterm.Sprint(a)}}, - {{Data: pterm.Sprint("test")}}, - {{Data: pterm.Sprint("Hello, World!")}}, - } - p := pterm.PanelPrinter{}.WithPanels(panels).WithBottomPadding(1) - err := p.Render() - testza.AssertNoError(t, err) - }) -} - -func TestPanelPrinter_WithPanels(t *testing.T) { - panels := pterm.Panels{ - { - {Data: "Hello, World!"}, - }, - } - p := pterm.PanelPrinter{} - p2 := p.WithPanels(panels) - - testza.AssertEqual(t, panels, p2.Panels) - testza.AssertZero(t, p.Panels) -} - -func TestPanelPrinter_WithPadding(t *testing.T) { - padding := 1337 - p := pterm.PanelPrinter{} - p2 := p.WithPadding(padding) - - testza.AssertEqual(t, padding, p2.Padding) - testza.AssertZero(t, p.Padding) -} - -func TestPanelPrinter_WithInvalidPadding(t *testing.T) { - padding := -5 - p := pterm.PanelPrinter{} - p2 := p.WithPadding(padding) - - testza.AssertEqual(t, 0, p2.Padding) - testza.AssertZero(t, p.Padding) -} - -func TestPanelPrinter_WithBottomPadding(t *testing.T) { - padding := 1337 - p := pterm.PanelPrinter{} - p2 := p.WithBottomPadding(padding) - - testza.AssertEqual(t, padding, p2.BottomPadding) - testza.AssertZero(t, p.BottomPadding) -} - -func TestPanelPrinter_WithInvalidBottomPadding(t *testing.T) { - padding := -5 - p := pterm.PanelPrinter{} - p2 := p.WithBottomPadding(padding) - - testza.AssertEqual(t, 0, p2.BottomPadding) - testza.AssertZero(t, p.BottomPadding) -} - -func TestPanelPrinter_WithSameColumnWidth(t *testing.T) { - p := pterm.PanelPrinter{} - p2 := p.WithSameColumnWidth() - - testza.AssertTrue(t, p2.SameColumnWidth) - testza.AssertFalse(t, p.SameColumnWidth) -} - -func TestPanelPrinter_WithBoxPrinter(t *testing.T) { - p := pterm.PanelPrinter{} - p2 := p.WithBoxPrinter(pterm.DefaultBox) - - testza.AssertEqual(t, pterm.DefaultBox, p2.BoxPrinter) - testza.AssertZero(t, p.BoxPrinter) -} - -func TestPanelPrinter_WithWriter(t *testing.T) { - p := pterm.PanelPrinter{} - s := os.Stderr - p2 := p.WithWriter(s) - - testza.AssertEqual(t, s, p2.Writer) - testza.AssertZero(t, p.Writer) -} diff --git a/paragraph_printer_test.go b/paragraph_printer_test.go index d5c4e7491..4b205b360 100644 --- a/paragraph_printer_test.go +++ b/paragraph_printer_test.go @@ -3,7 +3,6 @@ package pterm_test import ( "errors" "io" - "os" "testing" "github.com/MarvinJWendt/testza" @@ -16,6 +15,10 @@ func TestParagraphPrinterNilPrint(t *testing.T) { p.Println("Hello, World!") } +func TestParagraphPrinter_WithMethods(t *testing.T) { + testWithMethods(t, pterm.ParagraphPrinter{}) +} + func TestParagraphPrinterPrintMethods(t *testing.T) { p := pterm.DefaultParagraph @@ -105,19 +108,3 @@ func TestParagraphPrinterPrintMethods(t *testing.T) { testza.AssertZero(t, result) }) } - -func TestParagraphPrinter_WithMaxWidth(t *testing.T) { - p := pterm.ParagraphPrinter{} - p2 := p.WithMaxWidth(1337) - - testza.AssertEqual(t, 1337, p2.MaxWidth) -} - -func TestParagraphPrinter_WithWriter(t *testing.T) { - p := pterm.ParagraphPrinter{} - s := os.Stderr - p2 := p.WithWriter(s) - - testza.AssertEqual(t, s, p2.Writer) - testza.AssertZero(t, p.Writer) -} diff --git a/prefix_printer_test.go b/prefix_printer_test.go index a642cd1f1..aa7d0cd49 100644 --- a/prefix_printer_test.go +++ b/prefix_printer_test.go @@ -2,9 +2,7 @@ package pterm_test import ( "errors" - "fmt" "io" - "os" "testing" "github.com/MarvinJWendt/testza" @@ -20,6 +18,10 @@ func TestPrefixPrinterNilPrint(t *testing.T) { p.Println("Hello, World!") } +func TestPrefixPrinter_WithMethods(t *testing.T) { + testWithMethods(t, pterm.PrefixPrinter{}) +} + func TestPrefixPrinterPrintMethods(t *testing.T) { for _, p := range prefixPrinters { t.Run("Print", func(t *testing.T) { @@ -125,97 +127,6 @@ func TestPrefixPrinterPrintMethods(t *testing.T) { } } -func TestPrefixPrinterWithoutPrefix(t *testing.T) { - pterm.DisableStyling() - for _, p := range prefixPrinters { - p2 := p.WithPrefix(pterm.Prefix{}) - t.Run("", func(t *testing.T) { - for _, printable := range printables { - ret := captureStdout(func(w io.Writer) { - p2.Print(printable) - }) - testza.AssertEqual(t, ret, fmt.Sprint(printable)) - } - }) - } - pterm.EnableStyling() -} - -func TestSprintfWithNewLineEnding(t *testing.T) { - for _, p := range prefixPrinters { - t.Run("", func(t *testing.T) { - testza.AssertNotContains(t, "\n\n", p.Sprintf("%s\n\n\n\n", "Hello, World!")) - }) - } -} - -func TestPrefixPrinter_GetFormattedPrefix(t *testing.T) { - for _, p := range prefixPrinters { - t.Run("", func(t *testing.T) { - testza.AssertNotZero(t, p.GetFormattedPrefix()) - }) - } -} - -func TestPrefixPrinter_WithFatal(t *testing.T) { - for _, p := range prefixPrinters { - t.Run("", func(t *testing.T) { - p2 := p.WithFatal() - - testza.AssertEqual(t, true, p2.Fatal) - }) - } -} - -func TestPrefixPrinter_WithShowLineNumber(t *testing.T) { - for _, p := range prefixPrinters { - t.Run("", func(t *testing.T) { - p2 := p.WithShowLineNumber() - - testza.AssertEqual(t, true, p2.ShowLineNumber) - }) - } -} - -func TestPrefixPrinter_WithMessageStyle(t *testing.T) { - for _, p := range prefixPrinters { - t.Run("", func(t *testing.T) { - s := pterm.NewStyle(pterm.FgRed, pterm.BgBlue, pterm.Bold) - p2 := p.WithMessageStyle(s) - - testza.AssertEqual(t, s, p2.MessageStyle) - }) - } -} - -func TestPrefixPrinter_WithPrefix(t *testing.T) { - for _, p := range prefixPrinters { - t.Run("", func(t *testing.T) { - s := pterm.Prefix{ - Text: "test", - Style: pterm.NewStyle(pterm.FgRed, pterm.BgBlue, pterm.Bold), - } - p2 := p.WithPrefix(s) - - testza.AssertEqual(t, s, p2.Prefix) - }) - } -} - -func TestPrefixPrinter_WithScope(t *testing.T) { - for _, p := range prefixPrinters { - t.Run("", func(t *testing.T) { - s := pterm.Scope{ - Text: "test", - Style: pterm.NewStyle(pterm.FgRed, pterm.BgBlue, pterm.Bold), - } - p2 := p.WithScope(s) - - testza.AssertEqual(t, s, p2.Scope) - }) - } -} - func Test_checkFatal(t *testing.T) { for _, p := range prefixPrinters { t.Run("", func(t *testing.T) { @@ -227,16 +138,6 @@ func Test_checkFatal(t *testing.T) { } } -func TestPrefixPrinter_WithDebugger(t *testing.T) { - for _, p := range prefixPrinters { - t.Run("", func(t *testing.T) { - p2 := p.WithDebugger() - - testza.AssertTrue(t, p2.Debugger) - }) - } -} - func TestPrefixPrinter_PrintWithDebugger(t *testing.T) { for _, p := range prefixPrinters { t.Run("", func(t *testing.T) { @@ -403,25 +304,3 @@ func TestPrefixPrinter_SprintflnWithoutDebugger(t *testing.T) { }) } } - -func TestPrefixPrinter_WithLineNumberOffset(t *testing.T) { - for _, p := range prefixPrinters { - t.Run("", func(t *testing.T) { - p2 := p.WithLineNumberOffset(1337) - - testza.AssertEqual(t, 1337, p2.LineNumberOffset) - }) - } -} - -func TestPrefixPrinter_WithWriter(t *testing.T) { - for _, p := range prefixPrinters { - t.Run("", func(t *testing.T) { - s := os.Stderr - p2 := p.WithWriter(s) - - testza.AssertEqual(t, s, p2.Writer) - testza.AssertZero(t, p.Writer) - }) - } -} diff --git a/progressbar_printer_test.go b/progressbar_printer_test.go deleted file mode 100644 index cb5a9189f..000000000 --- a/progressbar_printer_test.go +++ /dev/null @@ -1,260 +0,0 @@ -package pterm_test - -import ( - "io" - "os" - "testing" - "time" - - "github.com/MarvinJWendt/testza" - "github.com/pterm/pterm" -) - -func TestProgressbarPrinter_Add(t *testing.T) { - proxyToDevNull() - p := pterm.DefaultProgressbar.WithTotal(2000) - p.Add(1337) - testza.AssertEqual(t, 1337, p.Current) - p.Stop() -} - -func TestProgressbarPrinter_Add_With(t *testing.T) { - proxyToDevNull() - w := pterm.GetTerminalWidth() - h := pterm.GetTerminalHeight() - pterm.SetForcedTerminalSize(1, 1) - p := pterm.DefaultProgressbar.WithTotal(2000) - p.Add(1337) - testza.AssertEqual(t, 1337, p.Current) - p.Stop() - pterm.SetForcedTerminalSize(w, h) -} - -func TestProgressbarPrinter_AddWithNoStyle(t *testing.T) { - proxyToDevNull() - p := pterm.ProgressbarPrinter{}.WithTotal(2000) - p.Add(1337) - testza.AssertEqual(t, 1337, p.Current) - p.Stop() -} - -func TestProgressbarPrinter_AddWithTotalOfZero(t *testing.T) { - proxyToDevNull() - p := pterm.ProgressbarPrinter{}.WithTotal(0) - p.Add(1337) - testza.AssertEqual(t, 0, p.Current) - p.Stop() -} - -func TestProgressbarPrinter_AddTotalEqualsCurrent(t *testing.T) { - proxyToDevNull() - p := pterm.DefaultProgressbar.WithTotal(1) - p.Start() - p.Add(1) - testza.AssertEqual(t, 1, p.Current) - testza.AssertFalse(t, p.IsActive) - p.Stop() -} - -func TestProgressbarPrinter_RemoveWhenDone(t *testing.T) { - proxyToDevNull() - p, err := pterm.DefaultProgressbar.WithTotal(2).WithRemoveWhenDone().Start() - testza.AssertNoError(t, err) - p.Stop() - p.Add(1) - testza.AssertEqual(t, 1, p.Current) - testza.AssertFalse(t, p.IsActive) -} - -func TestProgressbarPrinter_StartWithTitle(t *testing.T) { - p := pterm.DefaultProgressbar - p2, _ := p.Start("Title") - testza.AssertEqual(t, "Title", p2.Title) - p.Stop() -} - -func TestProgressbarPrinter_GenericStart(t *testing.T) { - p := pterm.DefaultProgressbar - p.GenericStart() -} - -func TestProgressbarPrinter_GenericStartRawOutput(t *testing.T) { - pterm.DisableStyling() - p := pterm.DefaultProgressbar - p.GenericStart() - pterm.EnableStyling() -} - -func TestProgressbarPrinter_GenericStop(t *testing.T) { - p, err := pterm.DefaultProgressbar.Start() - testza.AssertNoError(t, err) - p.GenericStop() -} - -func TestProgressbarPrinter_GetElapsedTime(t *testing.T) { - p := pterm.DefaultProgressbar - p.Start() - p.Stop() - testza.AssertNotZero(t, p.GetElapsedTime()) -} - -func TestProgressbarPrinter_Increment(t *testing.T) { - p := pterm.DefaultProgressbar.WithTotal(2000) - p.Increment() - testza.AssertEqual(t, 1, p.Current) -} - -func TestProgressbarPrinter_WithBarStyle(t *testing.T) { - s := pterm.NewStyle(pterm.FgRed, pterm.BgBlue, pterm.Bold) - p := pterm.ProgressbarPrinter{} - p2 := p.WithBarStyle(s) - - testza.AssertEqual(t, s, p2.BarStyle) -} - -func TestProgressbarPrinter_WithCurrent(t *testing.T) { - p := pterm.ProgressbarPrinter{} - p2 := p.WithCurrent(10) - - testza.AssertEqual(t, 10, p2.Current) -} - -func TestProgressbarPrinter_WithElapsedTimeRoundingFactor(t *testing.T) { - p := pterm.ProgressbarPrinter{} - p2 := p.WithElapsedTimeRoundingFactor(time.Hour) - - testza.AssertEqual(t, time.Hour, p2.ElapsedTimeRoundingFactor) -} - -func TestProgressbarPrinter_WithLastCharacter(t *testing.T) { - p := pterm.ProgressbarPrinter{} - p2 := p.WithLastCharacter(">") - - testza.AssertEqual(t, ">", p2.LastCharacter) -} - -func TestProgressbarPrinter_WithBarCharacter(t *testing.T) { - p := pterm.ProgressbarPrinter{} - p2 := p.WithBarCharacter("-") - - testza.AssertEqual(t, "-", p2.BarCharacter) -} - -func TestProgressbarPrinter_WithRemoveWhenDone(t *testing.T) { - p := pterm.ProgressbarPrinter{} - p2 := p.WithRemoveWhenDone() - - testza.AssertTrue(t, p2.RemoveWhenDone) -} - -func TestProgressbarPrinter_WithShowCount(t *testing.T) { - p := pterm.ProgressbarPrinter{} - p2 := p.WithShowCount() - - testza.AssertTrue(t, p2.ShowCount) -} - -func TestProgressbarPrinter_WithShowElapsedTime(t *testing.T) { - p := pterm.ProgressbarPrinter{} - p2 := p.WithShowElapsedTime() - - testza.AssertTrue(t, p2.ShowElapsedTime) -} - -func TestProgressbarPrinter_WithShowPercentage(t *testing.T) { - p := pterm.ProgressbarPrinter{} - p2 := p.WithShowPercentage() - - testza.AssertTrue(t, p2.ShowPercentage) -} - -func TestProgressbarPrinter_WithShowTitle(t *testing.T) { - p := pterm.ProgressbarPrinter{} - p2 := p.WithShowTitle() - - testza.AssertTrue(t, p2.ShowTitle) -} - -func TestProgressbarPrinter_WithTitle(t *testing.T) { - p := pterm.ProgressbarPrinter{} - p2 := p.WithTitle("test") - - testza.AssertEqual(t, "test", p2.Title) -} - -func TestProgressbarPrinter_WithTitleStyle(t *testing.T) { - s := pterm.NewStyle(pterm.FgRed, pterm.BgBlue, pterm.Bold) - p := pterm.ProgressbarPrinter{} - p2 := p.WithTitleStyle(s) - - testza.AssertEqual(t, s, p2.TitleStyle) -} - -func TestProgressbarPrinter_WithTotal(t *testing.T) { - p := pterm.ProgressbarPrinter{} - p2 := p.WithTotal(1337) - - testza.AssertEqual(t, 1337, p2.Total) -} - -func TestProgressbarPrinter_WithMaxWidth(t *testing.T) { - p := pterm.ProgressbarPrinter{} - p2 := p.WithMaxWidth(1337) - - testza.AssertEqual(t, 1337, p2.MaxWidth) -} - -func TestProgressbarPrinter_WithBarFiller(t *testing.T) { - p := pterm.ProgressbarPrinter{} - p2 := p.WithBarFiller("-") - - testza.AssertEqual(t, "-", p2.BarFiller) -} - -func TestProgressbarPrinter_UpdateTitle(t *testing.T) { - p := pterm.ProgressbarPrinter{} - p2 := p.WithTitle("test") - p2.UpdateTitle("test2") - - testza.AssertEqual(t, "test2", p2.Title) -} - -func TestProgressbarPrinter_WithWriter(t *testing.T) { - p := pterm.ProgressbarPrinter{} - s := os.Stderr - p2 := p.WithWriter(s) - - testza.AssertEqual(t, s, p2.Writer) - testza.AssertZero(t, p.Writer) -} - -func TestProgressbarPrinter_OutputToWriters(t *testing.T) { - testCases := map[string]struct { - action func(*pterm.ProgressbarPrinter) - expectOutputToContain string - }{ - "ExpectUpdatedTitleToBeWrittenToStderr": { - action: func(pb *pterm.ProgressbarPrinter) { - pb.UpdateTitle("Updated text") - }, - expectOutputToContain: "Updated text", - }, - } - - for testTitle, testCase := range testCases { - t.Run(testTitle, func(t *testing.T) { - stderr, err := testza.CaptureStderr(func(w io.Writer) error { - pb, err := pterm.DefaultProgressbar.WithTitle("Hello world").WithWriter(os.Stderr).Start() - time.Sleep(time.Second) // Required otherwise the goroutine doesn't run and the text isnt outputted - testza.AssertNoError(t, err) - testCase.action(pb) - time.Sleep(time.Second) // Required otherwise the goroutine doesn't run and the text isnt updated - return nil - }) - - testza.AssertNoError(t, err) - testza.AssertContains(t, stderr, "Hello world") - testza.AssertContains(t, stderr, testCase.expectOutputToContain) - }) - } -} diff --git a/section_printer_test.go b/section_printer_test.go index 2985c521c..94b266029 100644 --- a/section_printer_test.go +++ b/section_printer_test.go @@ -3,7 +3,6 @@ package pterm_test import ( "errors" "io" - "os" "testing" "github.com/MarvinJWendt/testza" @@ -16,6 +15,10 @@ func TestSectionPrinterNilPrint(t *testing.T) { p.Println("Hello, World!") } +func TestSectionPrinter_WithMethods(t *testing.T) { + testWithMethods(t, pterm.SectionPrinter{}) +} + func TestSectionPrinterPrintMethods(t *testing.T) { p := pterm.DefaultSection @@ -95,53 +98,3 @@ func TestSectionPrinterPrintMethods(t *testing.T) { testza.AssertZero(t, result) }) } - -func TestSectionPrinter_WithBottomPadding(t *testing.T) { - p := pterm.SectionPrinter{} - p2 := p.WithBottomPadding(1337) - - testza.AssertEqual(t, 1337, p2.BottomPadding) - testza.AssertZero(t, p.BottomPadding) -} - -func TestSectionPrinter_WithLevel(t *testing.T) { - p := pterm.SectionPrinter{} - p2 := p.WithLevel(1337) - - testza.AssertEqual(t, 1337, p2.Level) - testza.AssertZero(t, p.Level) -} - -func TestSectionPrinter_WithStyle(t *testing.T) { - p := pterm.SectionPrinter{} - s := pterm.NewStyle(pterm.FgRed, pterm.BgRed, pterm.Bold) - p2 := p.WithStyle(s) - - testza.AssertEqual(t, s, p2.Style) - testza.AssertZero(t, p.Style) -} - -func TestSectionPrinter_WithTopPadding(t *testing.T) { - p := pterm.SectionPrinter{} - p2 := p.WithTopPadding(1337) - - testza.AssertEqual(t, 1337, p2.TopPadding) - testza.AssertZero(t, p.TopPadding) -} - -func TestSectionPrinter_WithIndentCharacter(t *testing.T) { - p := pterm.SectionPrinter{} - p2 := p.WithIndentCharacter("#") - - testza.AssertEqual(t, "#", p2.IndentCharacter) - testza.AssertZero(t, p.IndentCharacter) -} - -func TestSectionPrinter_WithWriter(t *testing.T) { - p := pterm.SectionPrinter{} - s := os.Stderr - p2 := p.WithWriter(s) - - testza.AssertEqual(t, s, p2.Writer) - testza.AssertZero(t, p.Writer) -} diff --git a/spinner_printer_test.go b/spinner_printer_test.go index 998035596..d88a9d475 100644 --- a/spinner_printer_test.go +++ b/spinner_printer_test.go @@ -18,6 +18,10 @@ func TestSpinnerPrinter_NilPrint(t *testing.T) { p.Fail() } +func TestSpinnerPrinter_WithMethods(t *testing.T) { + testWithMethods(t, pterm.SpinnerPrinter{}) +} + func TestSpinnerPrinter_Fail(t *testing.T) { p := pterm.DefaultSpinner testPrintContains(t, func(w io.Writer, a interface{}) { @@ -96,83 +100,6 @@ func TestSpinnerPrinter_Warning(t *testing.T) { }) } -func TestSpinnerPrinter_WithDelay(t *testing.T) { - p := pterm.SpinnerPrinter{} - p2 := p.WithDelay(time.Second) - - testza.AssertEqual(t, time.Second, p2.Delay) -} - -func TestSpinnerPrinter_WithMessageStyle(t *testing.T) { - s := pterm.NewStyle(pterm.FgRed, pterm.BgBlue, pterm.Bold) - p := pterm.SpinnerPrinter{} - p2 := p.WithMessageStyle(s) - - testza.AssertEqual(t, s, p2.MessageStyle) -} - -func TestSpinnerPrinter_WithRemoveWhenDone(t *testing.T) { - p := pterm.SpinnerPrinter{} - p2 := p.WithRemoveWhenDone() - - testza.AssertTrue(t, p2.RemoveWhenDone) -} - -func TestSpinnerPrinter_WithSequence(t *testing.T) { - p := pterm.SpinnerPrinter{} - p2 := p.WithSequence("a", "b", "c") - - testza.AssertEqual(t, []string{"a", "b", "c"}, p2.Sequence) -} - -func TestSpinnerPrinter_WithStyle(t *testing.T) { - s := pterm.NewStyle(pterm.FgRed, pterm.BgBlue, pterm.Bold) - p := pterm.SpinnerPrinter{} - p2 := p.WithStyle(s) - - testza.AssertEqual(t, s, p2.Style) -} - -func TestSpinnerPrinter_WithText(t *testing.T) { - p := pterm.SpinnerPrinter{} - p2 := p.WithText("test") - - testza.AssertEqual(t, "test", p2.Text) -} - -func TestSpinnerPrinter_WithShowTimer(t *testing.T) { - p := pterm.SpinnerPrinter{} - p2 := p.WithShowTimer() - - testza.AssertTrue(t, p2.ShowTimer) -} - -func TestSpinnerPrinter_WithTimerStyle(t *testing.T) { - s := pterm.NewStyle(pterm.FgRed, pterm.BgBlue, pterm.Bold) - p := pterm.SpinnerPrinter{} - p2 := p.WithTimerStyle(s) - - testza.AssertEqual(t, s, p2.TimerStyle) -} - -func TestSpinnerPrinter_WithTimerRoundingFactor(t *testing.T) { - s := time.Millisecond * 200 - p := pterm.SpinnerPrinter{} - p2 := p.WithTimerRoundingFactor(s) - - testza.AssertEqual(t, s, p2.TimerRoundingFactor) -} - -func TestSpinnerPrinter_WithRawOutput(t *testing.T) { - pterm.RawOutput = true - s, _ := pterm.DefaultSpinner.Start() - go func() { - time.Sleep(time.Millisecond * 50) - s.Stop() - pterm.RawOutput = false - }() -} - func TestSpinnerPrinter_DifferentVariations(t *testing.T) { type fields struct { Text string @@ -220,15 +147,6 @@ func TestSpinnerPrinter_DifferentVariations(t *testing.T) { } } -func TestSpinnerPrinter_WithWriter(t *testing.T) { - p := pterm.SpinnerPrinter{} - s := os.Stderr - p2 := p.WithWriter(s) - - testza.AssertEqual(t, s, p2.Writer) - testza.AssertZero(t, p.Writer) -} - func TestSpinnerPrinter_OutputToWriters(t *testing.T) { testCases := map[string]struct { action func(*pterm.SpinnerPrinter) @@ -267,7 +185,3 @@ func TestSpinnerPrinter_OutputToWriters(t *testing.T) { }) } } - -// func TestClearActiveSpinners(t *testing.T) { -// activeSpinnerPrinters = []*pterm.SpinnerPrinter{} -// } diff --git a/table_printer_test.go b/table_printer_test.go index 3434ef615..42069726a 100644 --- a/table_printer_test.go +++ b/table_printer_test.go @@ -2,12 +2,10 @@ package pterm_test import ( "encoding/csv" - "io" - "os" + "fmt" + "strings" "testing" - "github.com/MarvinJWendt/testza" - "github.com/pterm/pterm" ) @@ -16,170 +14,109 @@ func TestTablePrinter_NilPrint(t *testing.T) { p.Render() } -func TestTablePrinter_Render(t *testing.T) { - d := pterm.TableData{ - {"Firstname", "Lastname", "Email"}, - {"Paul", "Dean", "nisi.dictum.augue@velitAliquam.co.uk"}, - {"Callie", "Mckay", "egestas.nunc.sed@est.com"}, - {"Libby", "Camacho", "aliquet.lobortis@semper.com"}, - } - // WithLeftAlignment - printer := pterm.DefaultTable.WithHasHeader().WithLeftAlignment().WithData(d) - content, err := printer.Srender() - - testza.AssertNoError(t, err) - testza.AssertNotNil(t, content) - // WithRightAlignment - printer = pterm.DefaultTable.WithHasHeader().WithRightAlignment().WithData(d) - content, err = printer.Srender() - - testza.AssertNoError(t, err) - testza.AssertNotNil(t, content) -} - -func TestTablePrinterWithRowSeparators_Render(t *testing.T) { - d := pterm.TableData{ - {"Firstname", "Lastname", "Email"}, - {"Paul", "Dean", "nisi.dictum.augue@velitAliquam.co.uk"}, - {"Callie", "Mckay", "egestas.nunc.sed@est.com"}, - {"Libby", "Camacho", "aliquet.lobortis@semper.com"}, +func TestTablePrinter_WithMethods(t *testing.T) { + testWithMethods(t, pterm.TablePrinter{}, "WithCSVReader") +} + +func TestTablePrinter(t *testing.T) { + data := []pterm.TableData{ + { + {"Firstname", "Lastname", "Age"}, + {"Paul", "Dean", "18"}, + {"John", "Carter", "21"}, + {"Jeremy", "Johnson", "42"}, + }, + { + {" Firstname ", " Lastname ", " Age "}, + {" Paul ", "Dean", "18"}, + {" John ", "Carter", " 21 "}, + {" Jeremy ", "Johnson", " 42"}, + }, + { + {" Firstname ", " Lastname ", " Age "}, + {" P\naul ", "Dean\n", "1\n8"}, + {" John ", "Car\n\nter", " 21 "}, + {" J\n\n\neremy ", "Johnson", " 4\n2"}, + }, } - // WithHeaderSeparator - printer := pterm.DefaultTable.WithHasHeader().WithHeaderRowSeparator("=").WithData(d) - content, err := printer.Srender() - testza.AssertNoError(t, err) - testza.AssertNotNil(t, content) - // WithRowSeparator - printer = pterm.DefaultTable.WithHasHeader().WithRowSeparator("-").WithData(d) - content, err = printer.Srender() - testza.AssertNoError(t, err) - testza.AssertNotNil(t, content) - // WithHeaderRowSeparator & WithRowSeparator - printer = pterm.DefaultTable.WithHasHeader().WithHeaderRowSeparator("=").WithRowSeparator("-").WithData(d) - content, err = printer.Srender() - testza.AssertNoError(t, err) - testza.AssertNotNil(t, content) -} - -func TestTablePrinter_WithCSVReader(t *testing.T) { - content := captureStdout(func(w io.Writer) { - r := csv.NewReader(&outBuf) - p := pterm.TablePrinter{} - p.WithCSVReader(r) - }) - testza.AssertNotNil(t, content) -} -func TestTablePrinter_WithBoxed(t *testing.T) { - _, err := pterm.DefaultTable.WithBoxed().Srender() - if err != nil { - t.Error(err) + for i, d := range data { + t.Run(fmt.Sprintf("Render_%d", i), func(t *testing.T) { + printerTest(t, func() { + pterm.DefaultTable.WithData(d).Render() + }) + }) + + t.Run(fmt.Sprintf("WithStyle_%d", i), func(t *testing.T) { + printerTest(t, func() { + pterm.DefaultTable.WithData(d).WithStyle(pterm.NewStyle(pterm.FgRed)).Render() + }) + }) + + t.Run(fmt.Sprintf("WithHasHeader_%d", i), func(t *testing.T) { + printerTest(t, func() { + pterm.DefaultTable.WithData(d).WithHasHeader().Render() + }) + }) + + t.Run(fmt.Sprintf("WithHeaderStyle_%d", i), func(t *testing.T) { + printerTest(t, func() { + pterm.DefaultTable.WithData(d).WithHasHeader().WithHeaderStyle(pterm.NewStyle(pterm.FgRed)).Render() + }) + }) + + t.Run(fmt.Sprintf("WithHeaderRowSeparator_%d", i), func(t *testing.T) { + printerTest(t, func() { + pterm.DefaultTable.WithData(d).WithHasHeader().WithHeaderRowSeparator("-").Render() + }) + }) + + t.Run(fmt.Sprintf("WithHeaderRowSeparatorStyle_%d", i), func(t *testing.T) { + printerTest(t, func() { + pterm.DefaultTable.WithData(d).WithHasHeader().WithHeaderRowSeparator("-").WithHeaderRowSeparatorStyle(pterm.NewStyle(pterm.FgRed)).Render() + }) + }) + + t.Run(fmt.Sprintf("WithSeparator_%d", i), func(t *testing.T) { + printerTest(t, func() { + pterm.DefaultTable.WithData(d).WithSeparator(":").Render() + }) + }) + + t.Run(fmt.Sprintf("WithSeparatorStyle_%d", i), func(t *testing.T) { + printerTest(t, func() { + pterm.DefaultTable.WithData(d).WithSeparatorStyle(pterm.NewStyle(pterm.FgRed)).Render() + }) + }) + + t.Run(fmt.Sprintf("WithRowSeparator_%d", i), func(t *testing.T) { + printerTest(t, func() { + pterm.DefaultTable.WithData(d).WithRowSeparator("-").Render() + }) + }) + + t.Run(fmt.Sprintf("WithRowSeparatorStyle_%d", i), func(t *testing.T) { + printerTest(t, func() { + pterm.DefaultTable.WithData(d).WithRowSeparatorStyle(pterm.NewStyle(pterm.FgRed)).Render() + }) + }) + + t.Run(fmt.Sprintf("WithCSVReader_%d", i), func(t *testing.T) { + printerTest(t, func() { + pterm.DefaultTable.WithCSVReader(csv.NewReader(strings.NewReader("a,b,c\n1,2,3\nx,y,z"))).Render() + }) + }) + + t.Run(fmt.Sprintf("WithBoxed_%d", i), func(t *testing.T) { + printerTest(t, func() { + pterm.DefaultTable.WithData(d).WithBoxed().Render() + }) + }) + + t.Run(fmt.Sprintf("WithLeftAlignment_%d", i), func(t *testing.T) { + printerTest(t, func() { + pterm.DefaultTable.WithData(d).WithLeftAlignment().Render() + }) + }) } } - -func TestTablePrinter_WithData(t *testing.T) { - proxyToDevNull() - d := pterm.TableData{ - {"Firstname", "Lastname", "Email"}, - {"Paul", "Dean", "nisi.dictum.augue@velitAliquam.co.uk"}, - {"Callie", "Mckay", "egestas.nunc.sed@est.com"}, - {"Libby", "Camacho", "aliquet.lobortis@semper.com"}, - } - p := pterm.TablePrinter{} - p2 := p.WithData(d) - - testza.AssertEqual(t, d, p2.Data) -} - -func TestTablePrinter_WithHasHeader(t *testing.T) { - p := pterm.TablePrinter{} - p2 := p.WithHasHeader() - - testza.AssertTrue(t, p2.HasHeader) -} - -func TestTablePrinter_WithHeaderStyle(t *testing.T) { - s := pterm.NewStyle(pterm.FgRed, pterm.BgBlue, pterm.Bold) - p := pterm.TablePrinter{} - p2 := p.WithHeaderStyle(s) - - testza.AssertEqual(t, s, p2.HeaderStyle) -} - -func TestTablePrinter_WithSeparator(t *testing.T) { - p := pterm.TablePrinter{} - p2 := p.WithSeparator("-") - - testza.AssertEqual(t, "-", p2.Separator) -} - -func TestTablePrinter_WithSeparatorStyle(t *testing.T) { - s := pterm.NewStyle(pterm.FgRed, pterm.BgBlue, pterm.Bold) - p := pterm.TablePrinter{} - p2 := p.WithSeparatorStyle(s) - - testza.AssertEqual(t, s, p2.SeparatorStyle) -} - -func TestTablePrinter_WithHeaderRowSeparator(t *testing.T) { - p := pterm.TablePrinter{} - p2 := p.WithHeaderRowSeparator("-") - - testza.AssertEqual(t, "-", p2.HeaderRowSeparator) -} - -func TestTablePrinter_WithHeaderRowSeparatorStyle(t *testing.T) { - s := pterm.NewStyle(pterm.FgRed, pterm.BgBlue, pterm.Bold) - p := pterm.TablePrinter{} - p2 := p.WithHeaderRowSeparatorStyle(s) - - testza.AssertEqual(t, s, p2.HeaderRowSeparatorStyle) -} - -func TestTablePrinter_WithRowSeparator(t *testing.T) { - p := pterm.TablePrinter{} - p2 := p.WithRowSeparator("-") - - testza.AssertEqual(t, "-", p2.RowSeparator) -} - -func TestTablePrinter_WithRowSeparatorStyle(t *testing.T) { - s := pterm.NewStyle(pterm.FgRed, pterm.BgBlue, pterm.Bold) - p := pterm.TablePrinter{} - p2 := p.WithRowSeparatorStyle(s) - - testza.AssertEqual(t, s, p2.RowSeparatorStyle) -} - -func TestTablePrinter_WithStyle(t *testing.T) { - s := pterm.NewStyle(pterm.FgRed, pterm.BgBlue, pterm.Bold) - p := pterm.TablePrinter{} - p2 := p.WithStyle(s) - - testza.AssertEqual(t, s, p2.Style) -} - -func TestTablePrinter_WithLeftAlignment(t *testing.T) { - s := true - p := pterm.TablePrinter{} - p2 := p.WithLeftAlignment(s) - - testza.AssertEqual(t, s, p2.LeftAlignment) -} - -func TestTablePrinter_WithRightAlignment(t *testing.T) { - s := true - p := pterm.TablePrinter{} - p2 := p.WithRightAlignment(s) - - testza.AssertEqual(t, s, p2.RightAlignment) -} - -func TestTablePrinter_WithWriter(t *testing.T) { - p := pterm.TablePrinter{} - s := os.Stderr - p2 := p.WithWriter(s) - - testza.AssertEqual(t, s, p2.Writer) - testza.AssertZero(t, p.Writer) -} diff --git a/terminal.go b/terminal.go index 24d95e3d7..c4d95e64c 100644 --- a/terminal.go +++ b/terminal.go @@ -56,7 +56,7 @@ func GetTerminalSize() (width, height int, err error) { return w, h, err } -// setForcedTerminalSize turns off terminal size autodetection. Usuful for unified tests. +// SetForcedTerminalSize forces the printers to use a specific terminal size. func SetForcedTerminalSize(width int, height int) { forcedTerminalWidth = width forcedTerminalHeight = height diff --git a/testdata/snapshots/TestCenterPrinter/Println.testza b/testdata/snapshots/TestCenterPrinter/Println.testza new file mode 100644 index 000000000..f05e0b6af --- /dev/null +++ b/testdata/snapshots/TestCenterPrinter/Println.testza @@ -0,0 +1 @@ +(string) (len=82) " Lorem ipsum dolor sit amet\n \n" diff --git a/testdata/snapshots/TestCenterPrinter/WithCenterEachLineSeparately.testza b/testdata/snapshots/TestCenterPrinter/WithCenterEachLineSeparately.testza new file mode 100644 index 000000000..21a518131 --- /dev/null +++ b/testdata/snapshots/TestCenterPrinter/WithCenterEachLineSeparately.testza @@ -0,0 +1 @@ +(string) (len=211) " Lorem ipsum dolor sit amet\n consetetur sadipscing elitre\n sed diam nonumy eirmod tempor invidunt ut\n \n" diff --git a/testdata/snapshots/TestTablePrinter/Render_0.testza b/testdata/snapshots/TestTablePrinter/Render_0.testza new file mode 100644 index 000000000..3c3706088 --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/Render_0.testza @@ -0,0 +1 @@ +(string) (len=2656) "\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n" diff --git a/testdata/snapshots/TestTablePrinter/Render_1.testza b/testdata/snapshots/TestTablePrinter/Render_1.testza new file mode 100644 index 000000000..ab17d07bd --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/Render_1.testza @@ -0,0 +1 @@ +(string) (len=3152) "\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n" diff --git a/testdata/snapshots/TestTablePrinter/Render_2.testza b/testdata/snapshots/TestTablePrinter/Render_2.testza new file mode 100644 index 000000000..d6da02f4f --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/Render_2.testza @@ -0,0 +1 @@ +(string) (len=6608) "\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithBoxed_0.testza b/testdata/snapshots/TestTablePrinter/WithBoxed_0.testza new file mode 100644 index 000000000..e515751ef --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithBoxed_0.testza @@ -0,0 +1 @@ +(string) (len=15264) "\r \r\x1b[39m\x1b[39m┌\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┐\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mAge\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m18\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m21\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m42\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m└\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┘\x1b[0m\x1b[0m\n\r \r\x1b[39m\x1b[39m┌\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┐\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mAge\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m18\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m21\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m42\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m└\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┘\x1b[0m\x1b[0m\n\r \r\x1b[39m\x1b[39m┌\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┐\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mAge\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m18\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m21\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m42\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m└\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┘\x1b[0m\x1b[0m\n\r \r\x1b[39m\x1b[39m┌\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┐\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mAge\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m18\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m21\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m42\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m└\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┘\x1b[0m\x1b[0m\n\r \r\x1b[39m\x1b[39m┌\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┐\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mAge\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m18\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m21\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m42\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m└\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┘\x1b[0m\x1b[0m\n\r \r\x1b[39m\x1b[39m┌\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┐\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mAge\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m18\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m21\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m42\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m└\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┘\x1b[0m\x1b[0m\n\r \r\x1b[39m\x1b[39m┌\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┐\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mAge\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m18\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m21\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m42\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m└\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┘\x1b[0m\x1b[0m\n\r \r\x1b[39m\x1b[39m┌\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┐\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mAge\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m18\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m21\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39mJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m42\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m└\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┘\x1b[0m\x1b[0m\n" diff --git a/testdata/snapshots/TestTablePrinter/WithBoxed_1.testza b/testdata/snapshots/TestTablePrinter/WithBoxed_1.testza new file mode 100644 index 000000000..84cfc5820 --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithBoxed_1.testza @@ -0,0 +1 @@ +(string) (len=21888) "\r \r\x1b[39m\x1b[39m┌\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┐\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Age \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m18\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m John \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 21 \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 42\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m└\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┘\x1b[0m\x1b[0m\n\r \r\x1b[39m\x1b[39m┌\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┐\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Age \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m18\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m John \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 21 \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 42\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m└\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┘\x1b[0m\x1b[0m\n\r \r\x1b[39m\x1b[39m┌\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┐\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Age \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m18\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m John \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 21 \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 42\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m└\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┘\x1b[0m\x1b[0m\n\r \r\x1b[39m\x1b[39m┌\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┐\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Age \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m18\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m John \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 21 \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 42\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m└\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┘\x1b[0m\x1b[0m\n\r \r\x1b[39m\x1b[39m┌\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┐\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Age \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m18\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m John \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 21 \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 42\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m└\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┘\x1b[0m\x1b[0m\n\r \r\x1b[39m\x1b[39m┌\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┐\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Age \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m18\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m John \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 21 \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 42\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m└\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┘\x1b[0m\x1b[0m\n\r \r\x1b[39m\x1b[39m┌\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┐\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Age \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m18\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m John \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 21 \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 42\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m└\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┘\x1b[0m\x1b[0m\n\r \r\x1b[39m\x1b[39m┌\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┐\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Age \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m18\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m John \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 21 \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 42\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m└\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┘\x1b[0m\x1b[0m\n" diff --git a/testdata/snapshots/TestTablePrinter/WithBoxed_2.testza b/testdata/snapshots/TestTablePrinter/WithBoxed_2.testza new file mode 100644 index 000000000..4f4b644bb --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithBoxed_2.testza @@ -0,0 +1 @@ +(string) (len=29520) "\r \r\x1b[39m\x1b[39m┌\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┐\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Age \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m P \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m1\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39maul \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m8\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m John \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 21 \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mter \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m J \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 4\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m2\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39meremy \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m└\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┘\x1b[0m\x1b[0m\n\r \r\x1b[39m\x1b[39m┌\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┐\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Age \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m P \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m1\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39maul \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m8\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m John \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 21 \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mter \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m J \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 4\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m2\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39meremy \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m└\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┘\x1b[0m\x1b[0m\n\r \r\x1b[39m\x1b[39m┌\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┐\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Age \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m P \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m1\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39maul \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m8\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m John \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 21 \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mter \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m J \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 4\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m2\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39meremy \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m└\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┘\x1b[0m\x1b[0m\n\r \r\x1b[39m\x1b[39m┌\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┐\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Age \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m P \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m1\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39maul \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m8\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m John \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 21 \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mter \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m J \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 4\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m2\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39meremy \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m└\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┘\x1b[0m\x1b[0m\n\r \r\x1b[39m\x1b[39m┌\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┐\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Age \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m P \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m1\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39maul \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m8\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m John \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 21 \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mter \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m J \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 4\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m2\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39meremy \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m└\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┘\x1b[0m\x1b[0m\n\r \r\x1b[39m\x1b[39m┌\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┐\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Age \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m P \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m1\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39maul \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m8\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m John \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 21 \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mter \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m J \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 4\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m2\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39meremy \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m└\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┘\x1b[0m\x1b[0m\n\r \r\x1b[39m\x1b[39m┌\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┐\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Age \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m P \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m1\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39maul \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m8\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m John \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 21 \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mter \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m J \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 4\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m2\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39meremy \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m└\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┘\x1b[0m\x1b[0m\n\r \r\x1b[39m\x1b[39m┌\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┐\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m Age \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m P \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m1\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39maul \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m8\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m John \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 21 \x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mter \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m J \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m 4\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m2\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m|\x1b[0m\x1b[0m \x1b[39m\x1b[39meremy \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m \x1b[90m\x1b[90m | \x1b[0m\x1b[39m\x1b[0m\x1b[39m\x1b[0m\x1b[0m \x1b[39m\x1b[39m|\x1b[0m\x1b[0m\n\x1b[39m\x1b[39m└\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m─\x1b[0m\x1b[0m\x1b[39m\x1b[39m┘\x1b[0m\x1b[0m\n" diff --git a/testdata/snapshots/TestTablePrinter/WithCSVReader_0.testza b/testdata/snapshots/TestTablePrinter/WithCSVReader_0.testza new file mode 100644 index 000000000..2a1c779cb --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithCSVReader_0.testza @@ -0,0 +1 @@ +(string) (len=1768) "\r \ra\x1b[90m\x1b[90m | \x1b[0m\x1b[0mb\x1b[90m\x1b[90m | \x1b[0m\x1b[0mc\n1\x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\x1b[90m\x1b[90m | \x1b[0m\x1b[0m3\nx\x1b[90m\x1b[90m | \x1b[0m\x1b[0my\x1b[90m\x1b[90m | \x1b[0m\x1b[0mz\n\n\r \ra\x1b[90m\x1b[90m | \x1b[0m\x1b[0mb\x1b[90m\x1b[90m | \x1b[0m\x1b[0mc\n1\x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\x1b[90m\x1b[90m | \x1b[0m\x1b[0m3\nx\x1b[90m\x1b[90m | \x1b[0m\x1b[0my\x1b[90m\x1b[90m | \x1b[0m\x1b[0mz\n\n\r \ra\x1b[90m\x1b[90m | \x1b[0m\x1b[0mb\x1b[90m\x1b[90m | \x1b[0m\x1b[0mc\n1\x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\x1b[90m\x1b[90m | \x1b[0m\x1b[0m3\nx\x1b[90m\x1b[90m | \x1b[0m\x1b[0my\x1b[90m\x1b[90m | \x1b[0m\x1b[0mz\n\n\r \ra\x1b[90m\x1b[90m | \x1b[0m\x1b[0mb\x1b[90m\x1b[90m | \x1b[0m\x1b[0mc\n1\x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\x1b[90m\x1b[90m | \x1b[0m\x1b[0m3\nx\x1b[90m\x1b[90m | \x1b[0m\x1b[0my\x1b[90m\x1b[90m | \x1b[0m\x1b[0mz\n\n\r \ra\x1b[90m\x1b[90m | \x1b[0m\x1b[0mb\x1b[90m\x1b[90m | \x1b[0m\x1b[0mc\n1\x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\x1b[90m\x1b[90m | \x1b[0m\x1b[0m3\nx\x1b[90m\x1b[90m | \x1b[0m\x1b[0my\x1b[90m\x1b[90m | \x1b[0m\x1b[0mz\n\n\r \ra\x1b[90m\x1b[90m | \x1b[0m\x1b[0mb\x1b[90m\x1b[90m | \x1b[0m\x1b[0mc\n1\x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\x1b[90m\x1b[90m | \x1b[0m\x1b[0m3\nx\x1b[90m\x1b[90m | \x1b[0m\x1b[0my\x1b[90m\x1b[90m | \x1b[0m\x1b[0mz\n\n\r \ra\x1b[90m\x1b[90m | \x1b[0m\x1b[0mb\x1b[90m\x1b[90m | \x1b[0m\x1b[0mc\n1\x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\x1b[90m\x1b[90m | \x1b[0m\x1b[0m3\nx\x1b[90m\x1b[90m | \x1b[0m\x1b[0my\x1b[90m\x1b[90m | \x1b[0m\x1b[0mz\n\n\r \ra\x1b[90m\x1b[90m | \x1b[0m\x1b[0mb\x1b[90m\x1b[90m | \x1b[0m\x1b[0mc\n1\x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\x1b[90m\x1b[90m | \x1b[0m\x1b[0m3\nx\x1b[90m\x1b[90m | \x1b[0m\x1b[0my\x1b[90m\x1b[90m | \x1b[0m\x1b[0mz\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithCSVReader_1.testza b/testdata/snapshots/TestTablePrinter/WithCSVReader_1.testza new file mode 100644 index 000000000..2a1c779cb --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithCSVReader_1.testza @@ -0,0 +1 @@ +(string) (len=1768) "\r \ra\x1b[90m\x1b[90m | \x1b[0m\x1b[0mb\x1b[90m\x1b[90m | \x1b[0m\x1b[0mc\n1\x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\x1b[90m\x1b[90m | \x1b[0m\x1b[0m3\nx\x1b[90m\x1b[90m | \x1b[0m\x1b[0my\x1b[90m\x1b[90m | \x1b[0m\x1b[0mz\n\n\r \ra\x1b[90m\x1b[90m | \x1b[0m\x1b[0mb\x1b[90m\x1b[90m | \x1b[0m\x1b[0mc\n1\x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\x1b[90m\x1b[90m | \x1b[0m\x1b[0m3\nx\x1b[90m\x1b[90m | \x1b[0m\x1b[0my\x1b[90m\x1b[90m | \x1b[0m\x1b[0mz\n\n\r \ra\x1b[90m\x1b[90m | \x1b[0m\x1b[0mb\x1b[90m\x1b[90m | \x1b[0m\x1b[0mc\n1\x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\x1b[90m\x1b[90m | \x1b[0m\x1b[0m3\nx\x1b[90m\x1b[90m | \x1b[0m\x1b[0my\x1b[90m\x1b[90m | \x1b[0m\x1b[0mz\n\n\r \ra\x1b[90m\x1b[90m | \x1b[0m\x1b[0mb\x1b[90m\x1b[90m | \x1b[0m\x1b[0mc\n1\x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\x1b[90m\x1b[90m | \x1b[0m\x1b[0m3\nx\x1b[90m\x1b[90m | \x1b[0m\x1b[0my\x1b[90m\x1b[90m | \x1b[0m\x1b[0mz\n\n\r \ra\x1b[90m\x1b[90m | \x1b[0m\x1b[0mb\x1b[90m\x1b[90m | \x1b[0m\x1b[0mc\n1\x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\x1b[90m\x1b[90m | \x1b[0m\x1b[0m3\nx\x1b[90m\x1b[90m | \x1b[0m\x1b[0my\x1b[90m\x1b[90m | \x1b[0m\x1b[0mz\n\n\r \ra\x1b[90m\x1b[90m | \x1b[0m\x1b[0mb\x1b[90m\x1b[90m | \x1b[0m\x1b[0mc\n1\x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\x1b[90m\x1b[90m | \x1b[0m\x1b[0m3\nx\x1b[90m\x1b[90m | \x1b[0m\x1b[0my\x1b[90m\x1b[90m | \x1b[0m\x1b[0mz\n\n\r \ra\x1b[90m\x1b[90m | \x1b[0m\x1b[0mb\x1b[90m\x1b[90m | \x1b[0m\x1b[0mc\n1\x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\x1b[90m\x1b[90m | \x1b[0m\x1b[0m3\nx\x1b[90m\x1b[90m | \x1b[0m\x1b[0my\x1b[90m\x1b[90m | \x1b[0m\x1b[0mz\n\n\r \ra\x1b[90m\x1b[90m | \x1b[0m\x1b[0mb\x1b[90m\x1b[90m | \x1b[0m\x1b[0mc\n1\x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\x1b[90m\x1b[90m | \x1b[0m\x1b[0m3\nx\x1b[90m\x1b[90m | \x1b[0m\x1b[0my\x1b[90m\x1b[90m | \x1b[0m\x1b[0mz\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithCSVReader_2.testza b/testdata/snapshots/TestTablePrinter/WithCSVReader_2.testza new file mode 100644 index 000000000..2a1c779cb --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithCSVReader_2.testza @@ -0,0 +1 @@ +(string) (len=1768) "\r \ra\x1b[90m\x1b[90m | \x1b[0m\x1b[0mb\x1b[90m\x1b[90m | \x1b[0m\x1b[0mc\n1\x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\x1b[90m\x1b[90m | \x1b[0m\x1b[0m3\nx\x1b[90m\x1b[90m | \x1b[0m\x1b[0my\x1b[90m\x1b[90m | \x1b[0m\x1b[0mz\n\n\r \ra\x1b[90m\x1b[90m | \x1b[0m\x1b[0mb\x1b[90m\x1b[90m | \x1b[0m\x1b[0mc\n1\x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\x1b[90m\x1b[90m | \x1b[0m\x1b[0m3\nx\x1b[90m\x1b[90m | \x1b[0m\x1b[0my\x1b[90m\x1b[90m | \x1b[0m\x1b[0mz\n\n\r \ra\x1b[90m\x1b[90m | \x1b[0m\x1b[0mb\x1b[90m\x1b[90m | \x1b[0m\x1b[0mc\n1\x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\x1b[90m\x1b[90m | \x1b[0m\x1b[0m3\nx\x1b[90m\x1b[90m | \x1b[0m\x1b[0my\x1b[90m\x1b[90m | \x1b[0m\x1b[0mz\n\n\r \ra\x1b[90m\x1b[90m | \x1b[0m\x1b[0mb\x1b[90m\x1b[90m | \x1b[0m\x1b[0mc\n1\x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\x1b[90m\x1b[90m | \x1b[0m\x1b[0m3\nx\x1b[90m\x1b[90m | \x1b[0m\x1b[0my\x1b[90m\x1b[90m | \x1b[0m\x1b[0mz\n\n\r \ra\x1b[90m\x1b[90m | \x1b[0m\x1b[0mb\x1b[90m\x1b[90m | \x1b[0m\x1b[0mc\n1\x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\x1b[90m\x1b[90m | \x1b[0m\x1b[0m3\nx\x1b[90m\x1b[90m | \x1b[0m\x1b[0my\x1b[90m\x1b[90m | \x1b[0m\x1b[0mz\n\n\r \ra\x1b[90m\x1b[90m | \x1b[0m\x1b[0mb\x1b[90m\x1b[90m | \x1b[0m\x1b[0mc\n1\x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\x1b[90m\x1b[90m | \x1b[0m\x1b[0m3\nx\x1b[90m\x1b[90m | \x1b[0m\x1b[0my\x1b[90m\x1b[90m | \x1b[0m\x1b[0mz\n\n\r \ra\x1b[90m\x1b[90m | \x1b[0m\x1b[0mb\x1b[90m\x1b[90m | \x1b[0m\x1b[0mc\n1\x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\x1b[90m\x1b[90m | \x1b[0m\x1b[0m3\nx\x1b[90m\x1b[90m | \x1b[0m\x1b[0my\x1b[90m\x1b[90m | \x1b[0m\x1b[0mz\n\n\r \ra\x1b[90m\x1b[90m | \x1b[0m\x1b[0mb\x1b[90m\x1b[90m | \x1b[0m\x1b[0mc\n1\x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\x1b[90m\x1b[90m | \x1b[0m\x1b[0m3\nx\x1b[90m\x1b[90m | \x1b[0m\x1b[0my\x1b[90m\x1b[90m | \x1b[0m\x1b[0mz\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithHasHeader_0.testza b/testdata/snapshots/TestTablePrinter/WithHasHeader_0.testza new file mode 100644 index 000000000..fab5d8a62 --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithHasHeader_0.testza @@ -0,0 +1 @@ +(string) (len=3032) "\r \r\x1b[96m\x1b[96mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mAge\x1b[0m\n\x1b[96m\x1b[0m\x1b[0mPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \r\x1b[96m\x1b[96mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mAge\x1b[0m\n\x1b[96m\x1b[0m\x1b[0mPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \r\x1b[96m\x1b[96mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mAge\x1b[0m\n\x1b[96m\x1b[0m\x1b[0mPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \r\x1b[96m\x1b[96mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mAge\x1b[0m\n\x1b[96m\x1b[0m\x1b[0mPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \r\x1b[96m\x1b[96mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mAge\x1b[0m\n\x1b[96m\x1b[0m\x1b[0mPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \r\x1b[96m\x1b[96mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mAge\x1b[0m\n\x1b[96m\x1b[0m\x1b[0mPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \r\x1b[96m\x1b[96mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mAge\x1b[0m\n\x1b[96m\x1b[0m\x1b[0mPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \r\x1b[96m\x1b[96mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mAge\x1b[0m\n\x1b[96m\x1b[0m\x1b[0mPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithHasHeader_1.testza b/testdata/snapshots/TestTablePrinter/WithHasHeader_1.testza new file mode 100644 index 000000000..399006b5f --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithHasHeader_1.testza @@ -0,0 +1 @@ +(string) (len=3528) "\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithHasHeader_2.testza b/testdata/snapshots/TestTablePrinter/WithHasHeader_2.testza new file mode 100644 index 000000000..11c6821b7 --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithHasHeader_2.testza @@ -0,0 +1 @@ +(string) (len=6984) "\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithHeaderRowSeparatorStyle_0.testza b/testdata/snapshots/TestTablePrinter/WithHeaderRowSeparatorStyle_0.testza new file mode 100644 index 000000000..7b6f83529 --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithHeaderRowSeparatorStyle_0.testza @@ -0,0 +1 @@ +(string) (len=6992) "\r \r\x1b[96m\x1b[96mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mAge\x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \r\x1b[96m\x1b[96mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mAge\x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \r\x1b[96m\x1b[96mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mAge\x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \r\x1b[96m\x1b[96mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mAge\x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \r\x1b[96m\x1b[96mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mAge\x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \r\x1b[96m\x1b[96mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mAge\x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \r\x1b[96m\x1b[96mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mAge\x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \r\x1b[96m\x1b[96mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mAge\x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithHeaderRowSeparatorStyle_1.testza b/testdata/snapshots/TestTablePrinter/WithHeaderRowSeparatorStyle_1.testza new file mode 100644 index 000000000..395c308f1 --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithHeaderRowSeparatorStyle_1.testza @@ -0,0 +1 @@ +(string) (len=10224) "\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithHeaderRowSeparatorStyle_2.testza b/testdata/snapshots/TestTablePrinter/WithHeaderRowSeparatorStyle_2.testza new file mode 100644 index 000000000..59d6392d2 --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithHeaderRowSeparatorStyle_2.testza @@ -0,0 +1 @@ +(string) (len=13680) "\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\x1b[31m\x1b[31m-\x1b[0m\x1b[0m\n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithHeaderRowSeparator_0.testza b/testdata/snapshots/TestTablePrinter/WithHeaderRowSeparator_0.testza new file mode 100644 index 000000000..1bb2931c5 --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithHeaderRowSeparator_0.testza @@ -0,0 +1 @@ +(string) (len=6992) "\r \r\x1b[96m\x1b[96mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mAge\x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \r\x1b[96m\x1b[96mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mAge\x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \r\x1b[96m\x1b[96mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mAge\x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \r\x1b[96m\x1b[96mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mAge\x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \r\x1b[96m\x1b[96mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mAge\x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \r\x1b[96m\x1b[96mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mAge\x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \r\x1b[96m\x1b[96mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mAge\x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \r\x1b[96m\x1b[96mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96mAge\x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithHeaderRowSeparator_1.testza b/testdata/snapshots/TestTablePrinter/WithHeaderRowSeparator_1.testza new file mode 100644 index 000000000..ff6cf6ef0 --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithHeaderRowSeparator_1.testza @@ -0,0 +1 @@ +(string) (len=10224) "\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithHeaderRowSeparator_2.testza b/testdata/snapshots/TestTablePrinter/WithHeaderRowSeparator_2.testza new file mode 100644 index 000000000..fb7e6e730 --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithHeaderRowSeparator_2.testza @@ -0,0 +1 @@ +(string) (len=13680) "\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r\x1b[96m\x1b[96m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[96m\x1b[0m\x1b[96m Age \x1b[0m\n\x1b[96m\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithHeaderStyle_0.testza b/testdata/snapshots/TestTablePrinter/WithHeaderStyle_0.testza new file mode 100644 index 000000000..96db8b860 --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithHeaderStyle_0.testza @@ -0,0 +1 @@ +(string) (len=3032) "\r \r\x1b[31m\x1b[31mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31mAge\x1b[0m\n\x1b[31m\x1b[0m\x1b[0mPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \r\x1b[31m\x1b[31mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31mAge\x1b[0m\n\x1b[31m\x1b[0m\x1b[0mPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \r\x1b[31m\x1b[31mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31mAge\x1b[0m\n\x1b[31m\x1b[0m\x1b[0mPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \r\x1b[31m\x1b[31mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31mAge\x1b[0m\n\x1b[31m\x1b[0m\x1b[0mPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \r\x1b[31m\x1b[31mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31mAge\x1b[0m\n\x1b[31m\x1b[0m\x1b[0mPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \r\x1b[31m\x1b[31mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31mAge\x1b[0m\n\x1b[31m\x1b[0m\x1b[0mPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \r\x1b[31m\x1b[31mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31mAge\x1b[0m\n\x1b[31m\x1b[0m\x1b[0mPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \r\x1b[31m\x1b[31mFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31mAge\x1b[0m\n\x1b[31m\x1b[0m\x1b[0mPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithHeaderStyle_1.testza b/testdata/snapshots/TestTablePrinter/WithHeaderStyle_1.testza new file mode 100644 index 000000000..e56e854da --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithHeaderStyle_1.testza @@ -0,0 +1 @@ +(string) (len=3528) "\r \r\x1b[31m\x1b[31m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Age \x1b[0m\n\x1b[31m\x1b[0m\x1b[0m Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r\x1b[31m\x1b[31m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Age \x1b[0m\n\x1b[31m\x1b[0m\x1b[0m Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r\x1b[31m\x1b[31m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Age \x1b[0m\n\x1b[31m\x1b[0m\x1b[0m Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r\x1b[31m\x1b[31m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Age \x1b[0m\n\x1b[31m\x1b[0m\x1b[0m Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r\x1b[31m\x1b[31m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Age \x1b[0m\n\x1b[31m\x1b[0m\x1b[0m Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r\x1b[31m\x1b[31m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Age \x1b[0m\n\x1b[31m\x1b[0m\x1b[0m Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r\x1b[31m\x1b[31m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Age \x1b[0m\n\x1b[31m\x1b[0m\x1b[0m Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r\x1b[31m\x1b[31m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Age \x1b[0m\n\x1b[31m\x1b[0m\x1b[0m Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithHeaderStyle_2.testza b/testdata/snapshots/TestTablePrinter/WithHeaderStyle_2.testza new file mode 100644 index 000000000..db4b1dc53 --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithHeaderStyle_2.testza @@ -0,0 +1 @@ +(string) (len=6984) "\r \r\x1b[31m\x1b[31m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Age \x1b[0m\n\x1b[31m\x1b[0m\x1b[0m P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r\x1b[31m\x1b[31m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Age \x1b[0m\n\x1b[31m\x1b[0m\x1b[0m P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r\x1b[31m\x1b[31m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Age \x1b[0m\n\x1b[31m\x1b[0m\x1b[0m P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r\x1b[31m\x1b[31m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Age \x1b[0m\n\x1b[31m\x1b[0m\x1b[0m P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r\x1b[31m\x1b[31m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Age \x1b[0m\n\x1b[31m\x1b[0m\x1b[0m P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r\x1b[31m\x1b[31m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Age \x1b[0m\n\x1b[31m\x1b[0m\x1b[0m P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r\x1b[31m\x1b[31m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Age \x1b[0m\n\x1b[31m\x1b[0m\x1b[0m P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r\x1b[31m\x1b[31m Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[31m\x1b[0m\x1b[31m Age \x1b[0m\n\x1b[31m\x1b[0m\x1b[0m P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithLeftAlignment_0.testza b/testdata/snapshots/TestTablePrinter/WithLeftAlignment_0.testza new file mode 100644 index 000000000..3c3706088 --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithLeftAlignment_0.testza @@ -0,0 +1 @@ +(string) (len=2656) "\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithLeftAlignment_1.testza b/testdata/snapshots/TestTablePrinter/WithLeftAlignment_1.testza new file mode 100644 index 000000000..14115bd69 --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithLeftAlignment_1.testza @@ -0,0 +1 @@ +(string) (len=3444) "\r \r\x1b[96m\x1b[96m▄ \x1b[0m\x1b[0m \x1b[97m\x1b[97m\x1b[0m\x1b[0m\x1b[90m\x1b[90m (6s)\x1b[0m\x1b[0m\r \r\x1b[96m\x1b[96m▄ \x1b[0m\x1b[0m \x1b[97m\x1b[97m\x1b[0m\x1b[0m\x1b[90m\x1b[90m (6s)\x1b[0m\x1b[0m\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithLeftAlignment_2.testza b/testdata/snapshots/TestTablePrinter/WithLeftAlignment_2.testza new file mode 100644 index 000000000..d6da02f4f --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithLeftAlignment_2.testza @@ -0,0 +1 @@ +(string) (len=6608) "\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithRowSeparatorStyle_0.testza b/testdata/snapshots/TestTablePrinter/WithRowSeparatorStyle_0.testza new file mode 100644 index 000000000..3c3706088 --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithRowSeparatorStyle_0.testza @@ -0,0 +1 @@ +(string) (len=2656) "\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithRowSeparatorStyle_1.testza b/testdata/snapshots/TestTablePrinter/WithRowSeparatorStyle_1.testza new file mode 100644 index 000000000..ab17d07bd --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithRowSeparatorStyle_1.testza @@ -0,0 +1 @@ +(string) (len=3152) "\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithRowSeparatorStyle_2.testza b/testdata/snapshots/TestTablePrinter/WithRowSeparatorStyle_2.testza new file mode 100644 index 000000000..d6da02f4f --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithRowSeparatorStyle_2.testza @@ -0,0 +1 @@ +(string) (len=6608) "\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithRowSeparator_0.testza b/testdata/snapshots/TestTablePrinter/WithRowSeparator_0.testza new file mode 100644 index 000000000..f97e013a4 --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithRowSeparator_0.testza @@ -0,0 +1 @@ +(string) (len=18496) "\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithRowSeparator_1.testza b/testdata/snapshots/TestTablePrinter/WithRowSeparator_1.testza new file mode 100644 index 000000000..552fd5a0f --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithRowSeparator_1.testza @@ -0,0 +1 @@ +(string) (len=29936) "\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithRowSeparator_2.testza b/testdata/snapshots/TestTablePrinter/WithRowSeparator_2.testza new file mode 100644 index 000000000..1bc7b8f21 --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithRowSeparator_2.testza @@ -0,0 +1 @@ +(string) (len=33392) "\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\x1b[90m\x1b[90m-\x1b[0m\x1b[0m\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithSeparatorStyle_0.testza b/testdata/snapshots/TestTablePrinter/WithSeparatorStyle_0.testza new file mode 100644 index 000000000..f7d46fe4f --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithSeparatorStyle_0.testza @@ -0,0 +1 @@ +(string) (len=2656) "\r \rFirstname\x1b[31m\x1b[31m | \x1b[0m\x1b[0mLastname\x1b[31m\x1b[31m | \x1b[0m\x1b[0mAge\nPaul \x1b[31m\x1b[31m | \x1b[0m\x1b[0mDean \x1b[31m\x1b[31m | \x1b[0m\x1b[0m18\nJohn \x1b[31m\x1b[31m | \x1b[0m\x1b[0mCarter \x1b[31m\x1b[31m | \x1b[0m\x1b[0m21\nJeremy \x1b[31m\x1b[31m | \x1b[0m\x1b[0mJohnson \x1b[31m\x1b[31m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[31m\x1b[31m | \x1b[0m\x1b[0mLastname\x1b[31m\x1b[31m | \x1b[0m\x1b[0mAge\nPaul \x1b[31m\x1b[31m | \x1b[0m\x1b[0mDean \x1b[31m\x1b[31m | \x1b[0m\x1b[0m18\nJohn \x1b[31m\x1b[31m | \x1b[0m\x1b[0mCarter \x1b[31m\x1b[31m | \x1b[0m\x1b[0m21\nJeremy \x1b[31m\x1b[31m | \x1b[0m\x1b[0mJohnson \x1b[31m\x1b[31m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[31m\x1b[31m | \x1b[0m\x1b[0mLastname\x1b[31m\x1b[31m | \x1b[0m\x1b[0mAge\nPaul \x1b[31m\x1b[31m | \x1b[0m\x1b[0mDean \x1b[31m\x1b[31m | \x1b[0m\x1b[0m18\nJohn \x1b[31m\x1b[31m | \x1b[0m\x1b[0mCarter \x1b[31m\x1b[31m | \x1b[0m\x1b[0m21\nJeremy \x1b[31m\x1b[31m | \x1b[0m\x1b[0mJohnson \x1b[31m\x1b[31m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[31m\x1b[31m | \x1b[0m\x1b[0mLastname\x1b[31m\x1b[31m | \x1b[0m\x1b[0mAge\nPaul \x1b[31m\x1b[31m | \x1b[0m\x1b[0mDean \x1b[31m\x1b[31m | \x1b[0m\x1b[0m18\nJohn \x1b[31m\x1b[31m | \x1b[0m\x1b[0mCarter \x1b[31m\x1b[31m | \x1b[0m\x1b[0m21\nJeremy \x1b[31m\x1b[31m | \x1b[0m\x1b[0mJohnson \x1b[31m\x1b[31m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[31m\x1b[31m | \x1b[0m\x1b[0mLastname\x1b[31m\x1b[31m | \x1b[0m\x1b[0mAge\nPaul \x1b[31m\x1b[31m | \x1b[0m\x1b[0mDean \x1b[31m\x1b[31m | \x1b[0m\x1b[0m18\nJohn \x1b[31m\x1b[31m | \x1b[0m\x1b[0mCarter \x1b[31m\x1b[31m | \x1b[0m\x1b[0m21\nJeremy \x1b[31m\x1b[31m | \x1b[0m\x1b[0mJohnson \x1b[31m\x1b[31m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[31m\x1b[31m | \x1b[0m\x1b[0mLastname\x1b[31m\x1b[31m | \x1b[0m\x1b[0mAge\nPaul \x1b[31m\x1b[31m | \x1b[0m\x1b[0mDean \x1b[31m\x1b[31m | \x1b[0m\x1b[0m18\nJohn \x1b[31m\x1b[31m | \x1b[0m\x1b[0mCarter \x1b[31m\x1b[31m | \x1b[0m\x1b[0m21\nJeremy \x1b[31m\x1b[31m | \x1b[0m\x1b[0mJohnson \x1b[31m\x1b[31m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[31m\x1b[31m | \x1b[0m\x1b[0mLastname\x1b[31m\x1b[31m | \x1b[0m\x1b[0mAge\nPaul \x1b[31m\x1b[31m | \x1b[0m\x1b[0mDean \x1b[31m\x1b[31m | \x1b[0m\x1b[0m18\nJohn \x1b[31m\x1b[31m | \x1b[0m\x1b[0mCarter \x1b[31m\x1b[31m | \x1b[0m\x1b[0m21\nJeremy \x1b[31m\x1b[31m | \x1b[0m\x1b[0mJohnson \x1b[31m\x1b[31m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[31m\x1b[31m | \x1b[0m\x1b[0mLastname\x1b[31m\x1b[31m | \x1b[0m\x1b[0mAge\nPaul \x1b[31m\x1b[31m | \x1b[0m\x1b[0mDean \x1b[31m\x1b[31m | \x1b[0m\x1b[0m18\nJohn \x1b[31m\x1b[31m | \x1b[0m\x1b[0mCarter \x1b[31m\x1b[31m | \x1b[0m\x1b[0m21\nJeremy \x1b[31m\x1b[31m | \x1b[0m\x1b[0mJohnson \x1b[31m\x1b[31m | \x1b[0m\x1b[0m42\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithSeparatorStyle_1.testza b/testdata/snapshots/TestTablePrinter/WithSeparatorStyle_1.testza new file mode 100644 index 000000000..c06f74eaa --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithSeparatorStyle_1.testza @@ -0,0 +1 @@ +(string) (len=3152) "\r \r Firstname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Lastname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Age \n Paul \x1b[31m\x1b[31m | \x1b[0m\x1b[0mDean \x1b[31m\x1b[31m | \x1b[0m\x1b[0m18\n John \x1b[31m\x1b[31m | \x1b[0m\x1b[0mCarter \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[31m\x1b[31m | \x1b[0m\x1b[0mJohnson \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Lastname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Age \n Paul \x1b[31m\x1b[31m | \x1b[0m\x1b[0mDean \x1b[31m\x1b[31m | \x1b[0m\x1b[0m18\n John \x1b[31m\x1b[31m | \x1b[0m\x1b[0mCarter \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[31m\x1b[31m | \x1b[0m\x1b[0mJohnson \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Lastname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Age \n Paul \x1b[31m\x1b[31m | \x1b[0m\x1b[0mDean \x1b[31m\x1b[31m | \x1b[0m\x1b[0m18\n John \x1b[31m\x1b[31m | \x1b[0m\x1b[0mCarter \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[31m\x1b[31m | \x1b[0m\x1b[0mJohnson \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Lastname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Age \n Paul \x1b[31m\x1b[31m | \x1b[0m\x1b[0mDean \x1b[31m\x1b[31m | \x1b[0m\x1b[0m18\n John \x1b[31m\x1b[31m | \x1b[0m\x1b[0mCarter \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[31m\x1b[31m | \x1b[0m\x1b[0mJohnson \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Lastname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Age \n Paul \x1b[31m\x1b[31m | \x1b[0m\x1b[0mDean \x1b[31m\x1b[31m | \x1b[0m\x1b[0m18\n John \x1b[31m\x1b[31m | \x1b[0m\x1b[0mCarter \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[31m\x1b[31m | \x1b[0m\x1b[0mJohnson \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Lastname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Age \n Paul \x1b[31m\x1b[31m | \x1b[0m\x1b[0mDean \x1b[31m\x1b[31m | \x1b[0m\x1b[0m18\n John \x1b[31m\x1b[31m | \x1b[0m\x1b[0mCarter \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[31m\x1b[31m | \x1b[0m\x1b[0mJohnson \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Lastname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Age \n Paul \x1b[31m\x1b[31m | \x1b[0m\x1b[0mDean \x1b[31m\x1b[31m | \x1b[0m\x1b[0m18\n John \x1b[31m\x1b[31m | \x1b[0m\x1b[0mCarter \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[31m\x1b[31m | \x1b[0m\x1b[0mJohnson \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Lastname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Age \n Paul \x1b[31m\x1b[31m | \x1b[0m\x1b[0mDean \x1b[31m\x1b[31m | \x1b[0m\x1b[0m18\n John \x1b[31m\x1b[31m | \x1b[0m\x1b[0mCarter \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[31m\x1b[31m | \x1b[0m\x1b[0mJohnson \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 42\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithSeparatorStyle_2.testza b/testdata/snapshots/TestTablePrinter/WithSeparatorStyle_2.testza new file mode 100644 index 000000000..2415863a8 --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithSeparatorStyle_2.testza @@ -0,0 +1 @@ +(string) (len=6608) "\r \r Firstname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Lastname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Age \n P \x1b[31m\x1b[31m | \x1b[0m\x1b[0mDean \x1b[31m\x1b[31m | \x1b[0m\x1b[0m1\naul \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m8\n John \x1b[31m\x1b[31m | \x1b[0m\x1b[0mCar \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 21 \n \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\n \x1b[31m\x1b[31m | \x1b[0m\x1b[0mter \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\n J \x1b[31m\x1b[31m | \x1b[0m\x1b[0mJohnson \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 4\n \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m2\n \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\neremy \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Lastname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Age \n P \x1b[31m\x1b[31m | \x1b[0m\x1b[0mDean \x1b[31m\x1b[31m | \x1b[0m\x1b[0m1\naul \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m8\n John \x1b[31m\x1b[31m | \x1b[0m\x1b[0mCar \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 21 \n \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\n \x1b[31m\x1b[31m | \x1b[0m\x1b[0mter \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\n J \x1b[31m\x1b[31m | \x1b[0m\x1b[0mJohnson \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 4\n \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m2\n \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\neremy \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Lastname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Age \n P \x1b[31m\x1b[31m | \x1b[0m\x1b[0mDean \x1b[31m\x1b[31m | \x1b[0m\x1b[0m1\naul \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m8\n John \x1b[31m\x1b[31m | \x1b[0m\x1b[0mCar \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 21 \n \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\n \x1b[31m\x1b[31m | \x1b[0m\x1b[0mter \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\n J \x1b[31m\x1b[31m | \x1b[0m\x1b[0mJohnson \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 4\n \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m2\n \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\neremy \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Lastname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Age \n P \x1b[31m\x1b[31m | \x1b[0m\x1b[0mDean \x1b[31m\x1b[31m | \x1b[0m\x1b[0m1\naul \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m8\n John \x1b[31m\x1b[31m | \x1b[0m\x1b[0mCar \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 21 \n \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\n \x1b[31m\x1b[31m | \x1b[0m\x1b[0mter \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\n J \x1b[31m\x1b[31m | \x1b[0m\x1b[0mJohnson \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 4\n \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m2\n \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\neremy \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Lastname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Age \n P \x1b[31m\x1b[31m | \x1b[0m\x1b[0mDean \x1b[31m\x1b[31m | \x1b[0m\x1b[0m1\naul \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m8\n John \x1b[31m\x1b[31m | \x1b[0m\x1b[0mCar \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 21 \n \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\n \x1b[31m\x1b[31m | \x1b[0m\x1b[0mter \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\n J \x1b[31m\x1b[31m | \x1b[0m\x1b[0mJohnson \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 4\n \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m2\n \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\neremy \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Lastname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Age \n P \x1b[31m\x1b[31m | \x1b[0m\x1b[0mDean \x1b[31m\x1b[31m | \x1b[0m\x1b[0m1\naul \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m8\n John \x1b[31m\x1b[31m | \x1b[0m\x1b[0mCar \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 21 \n \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\n \x1b[31m\x1b[31m | \x1b[0m\x1b[0mter \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\n J \x1b[31m\x1b[31m | \x1b[0m\x1b[0mJohnson \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 4\n \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m2\n \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\neremy \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Lastname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Age \n P \x1b[31m\x1b[31m | \x1b[0m\x1b[0mDean \x1b[31m\x1b[31m | \x1b[0m\x1b[0m1\naul \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m8\n John \x1b[31m\x1b[31m | \x1b[0m\x1b[0mCar \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 21 \n \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\n \x1b[31m\x1b[31m | \x1b[0m\x1b[0mter \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\n J \x1b[31m\x1b[31m | \x1b[0m\x1b[0mJohnson \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 4\n \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m2\n \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\neremy \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Lastname \x1b[31m\x1b[31m | \x1b[0m\x1b[0m Age \n P \x1b[31m\x1b[31m | \x1b[0m\x1b[0mDean \x1b[31m\x1b[31m | \x1b[0m\x1b[0m1\naul \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m8\n John \x1b[31m\x1b[31m | \x1b[0m\x1b[0mCar \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 21 \n \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\n \x1b[31m\x1b[31m | \x1b[0m\x1b[0mter \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\n J \x1b[31m\x1b[31m | \x1b[0m\x1b[0mJohnson \x1b[31m\x1b[31m | \x1b[0m\x1b[0m 4\n \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m2\n \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\neremy \x1b[31m\x1b[31m | \x1b[0m\x1b[0m \x1b[31m\x1b[31m | \x1b[0m\x1b[0m\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithSeparator_0.testza b/testdata/snapshots/TestTablePrinter/WithSeparator_0.testza new file mode 100644 index 000000000..c90aeaed8 --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithSeparator_0.testza @@ -0,0 +1 @@ +(string) (len=2528) "\r \rFirstname\x1b[90m\x1b[90m:\x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m:\x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m:\x1b[0m\x1b[0mDean \x1b[90m\x1b[90m:\x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m:\x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m:\x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m:\x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m:\x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m:\x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m:\x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m:\x1b[0m\x1b[0mDean \x1b[90m\x1b[90m:\x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m:\x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m:\x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m:\x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m:\x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m:\x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m:\x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m:\x1b[0m\x1b[0mDean \x1b[90m\x1b[90m:\x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m:\x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m:\x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m:\x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m:\x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m:\x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m:\x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m:\x1b[0m\x1b[0mDean \x1b[90m\x1b[90m:\x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m:\x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m:\x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m:\x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m:\x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m:\x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m:\x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m:\x1b[0m\x1b[0mDean \x1b[90m\x1b[90m:\x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m:\x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m:\x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m:\x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m:\x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m:\x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m:\x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m:\x1b[0m\x1b[0mDean \x1b[90m\x1b[90m:\x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m:\x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m:\x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m:\x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m:\x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m:\x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m:\x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m:\x1b[0m\x1b[0mDean \x1b[90m\x1b[90m:\x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m:\x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m:\x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m:\x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m:\x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m:\x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m:\x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m:\x1b[0m\x1b[0mDean \x1b[90m\x1b[90m:\x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m:\x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m:\x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m:\x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m:\x1b[0m\x1b[0m42\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithSeparator_1.testza b/testdata/snapshots/TestTablePrinter/WithSeparator_1.testza new file mode 100644 index 000000000..125692867 --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithSeparator_1.testza @@ -0,0 +1 @@ +(string) (len=3024) "\r \r Firstname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m:\x1b[0m\x1b[0mDean \x1b[90m\x1b[90m:\x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m:\x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m:\x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m:\x1b[0m\x1b[0mDean \x1b[90m\x1b[90m:\x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m:\x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m:\x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m:\x1b[0m\x1b[0mDean \x1b[90m\x1b[90m:\x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m:\x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m:\x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m:\x1b[0m\x1b[0mDean \x1b[90m\x1b[90m:\x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m:\x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m:\x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m:\x1b[0m\x1b[0mDean \x1b[90m\x1b[90m:\x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m:\x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m:\x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m:\x1b[0m\x1b[0mDean \x1b[90m\x1b[90m:\x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m:\x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m:\x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m:\x1b[0m\x1b[0mDean \x1b[90m\x1b[90m:\x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m:\x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m:\x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m:\x1b[0m\x1b[0mDean \x1b[90m\x1b[90m:\x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m:\x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m:\x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 42\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithSeparator_2.testza b/testdata/snapshots/TestTablePrinter/WithSeparator_2.testza new file mode 100644 index 000000000..1d883ae5a --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithSeparator_2.testza @@ -0,0 +1 @@ +(string) (len=6288) "\r \r Firstname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m:\x1b[0m\x1b[0mDean \x1b[90m\x1b[90m:\x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m:\x1b[0m\x1b[0mCar \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\n \x1b[90m\x1b[90m:\x1b[0m\x1b[0mter \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m:\x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m:\x1b[0m\x1b[0mDean \x1b[90m\x1b[90m:\x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m:\x1b[0m\x1b[0mCar \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\n \x1b[90m\x1b[90m:\x1b[0m\x1b[0mter \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m:\x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m:\x1b[0m\x1b[0mDean \x1b[90m\x1b[90m:\x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m:\x1b[0m\x1b[0mCar \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\n \x1b[90m\x1b[90m:\x1b[0m\x1b[0mter \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m:\x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m:\x1b[0m\x1b[0mDean \x1b[90m\x1b[90m:\x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m:\x1b[0m\x1b[0mCar \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\n \x1b[90m\x1b[90m:\x1b[0m\x1b[0mter \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m:\x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m:\x1b[0m\x1b[0mDean \x1b[90m\x1b[90m:\x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m:\x1b[0m\x1b[0mCar \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\n \x1b[90m\x1b[90m:\x1b[0m\x1b[0mter \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m:\x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m:\x1b[0m\x1b[0mDean \x1b[90m\x1b[90m:\x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m:\x1b[0m\x1b[0mCar \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\n \x1b[90m\x1b[90m:\x1b[0m\x1b[0mter \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m:\x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m:\x1b[0m\x1b[0mDean \x1b[90m\x1b[90m:\x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m:\x1b[0m\x1b[0mCar \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\n \x1b[90m\x1b[90m:\x1b[0m\x1b[0mter \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m:\x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m:\x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m:\x1b[0m\x1b[0mDean \x1b[90m\x1b[90m:\x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m:\x1b[0m\x1b[0mCar \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\n \x1b[90m\x1b[90m:\x1b[0m\x1b[0mter \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m:\x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m:\x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m:\x1b[0m\x1b[0m \x1b[90m\x1b[90m:\x1b[0m\x1b[0m\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithStyle_0.testza b/testdata/snapshots/TestTablePrinter/WithStyle_0.testza new file mode 100644 index 000000000..3c3706088 --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithStyle_0.testza @@ -0,0 +1 @@ +(string) (len=2656) "\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n\r \rFirstname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mLastname\x1b[90m\x1b[90m | \x1b[0m\x1b[0mAge\nPaul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\nJohn \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m21\nJeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m42\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithStyle_1.testza b/testdata/snapshots/TestTablePrinter/WithStyle_1.testza new file mode 100644 index 000000000..ab17d07bd --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithStyle_1.testza @@ -0,0 +1 @@ +(string) (len=3152) "\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n Paul \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m18\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCarter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n Jeremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 42\n\n" diff --git a/testdata/snapshots/TestTablePrinter/WithStyle_2.testza b/testdata/snapshots/TestTablePrinter/WithStyle_2.testza new file mode 100644 index 000000000..d6da02f4f --- /dev/null +++ b/testdata/snapshots/TestTablePrinter/WithStyle_2.testza @@ -0,0 +1 @@ +(string) (len=6608) "\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n\r \r Firstname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Lastname \x1b[90m\x1b[90m | \x1b[0m\x1b[0m Age \n P \x1b[90m\x1b[90m | \x1b[0m\x1b[0mDean \x1b[90m\x1b[90m | \x1b[0m\x1b[0m1\naul \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m8\n John \x1b[90m\x1b[90m | \x1b[0m\x1b[0mCar \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 21 \n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0mter \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n J \x1b[90m\x1b[90m | \x1b[0m\x1b[0mJohnson \x1b[90m\x1b[90m | \x1b[0m\x1b[0m 4\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m2\n \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\neremy \x1b[90m\x1b[90m | \x1b[0m\x1b[0m \x1b[90m\x1b[90m | \x1b[0m\x1b[0m\n\n" diff --git a/theme_test.go b/theme_test.go index 34690b58c..773f52e45 100644 --- a/theme_test.go +++ b/theme_test.go @@ -1,216 +1,10 @@ package pterm_test import ( - "testing" - - "github.com/MarvinJWendt/testza" "github.com/pterm/pterm" + "testing" ) -func TestTheme_WithDescriptionMessageStyle(t *testing.T) { - s := pterm.Style{pterm.FgRed, pterm.BgBlue, pterm.Bold} - p := pterm.Theme{} - p2 := p.WithDescriptionMessageStyle(s) - - testza.AssertEqual(t, s, p2.DescriptionMessageStyle) -} - -func TestTheme_WithDescriptionPrefixStyle(t *testing.T) { - s := pterm.Style{pterm.FgRed, pterm.BgBlue, pterm.Bold} - p := pterm.Theme{} - p2 := p.WithDescriptionPrefixStyle(s) - - testza.AssertEqual(t, s, p2.DescriptionPrefixStyle) -} - -func TestTheme_WithErrorMessageStyle(t *testing.T) { - s := pterm.Style{pterm.FgRed, pterm.BgBlue, pterm.Bold} - p := pterm.Theme{} - p2 := p.WithErrorMessageStyle(s) - - testza.AssertEqual(t, s, p2.ErrorMessageStyle) -} - -func TestTheme_WithErrorPrefixStyle(t *testing.T) { - s := pterm.Style{pterm.FgRed, pterm.BgBlue, pterm.Bold} - p := pterm.Theme{} - p2 := p.WithErrorPrefixStyle(s) - - testza.AssertEqual(t, s, p2.ErrorPrefixStyle) -} - -func TestTheme_WithFatalMessageStyle(t *testing.T) { - s := pterm.Style{pterm.FgRed, pterm.BgBlue, pterm.Bold} - p := pterm.Theme{} - p2 := p.WithFatalMessageStyle(s) - - testza.AssertEqual(t, s, p2.FatalMessageStyle) -} - -func TestTheme_WithFatalPrefixStyle(t *testing.T) { - s := pterm.Style{pterm.FgRed, pterm.BgBlue, pterm.Bold} - p := pterm.Theme{} - p2 := p.WithFatalPrefixStyle(s) - - testza.AssertEqual(t, s, p2.FatalPrefixStyle) -} - -func TestTheme_WithHighlightStyle(t *testing.T) { - s := pterm.Style{pterm.FgRed, pterm.BgBlue, pterm.Bold} - p := pterm.Theme{} - p2 := p.WithHighlightStyle(s) - - testza.AssertEqual(t, s, p2.HighlightStyle) -} - -func TestTheme_WithInfoMessageStyle(t *testing.T) { - s := pterm.Style{pterm.FgRed, pterm.BgBlue, pterm.Bold} - p := pterm.Theme{} - p2 := p.WithInfoMessageStyle(s) - - testza.AssertEqual(t, s, p2.InfoMessageStyle) -} - -func TestTheme_WithInfoPrefixStyle(t *testing.T) { - s := pterm.Style{pterm.FgRed, pterm.BgBlue, pterm.Bold} - p := pterm.Theme{} - p2 := p.WithInfoPrefixStyle(s) - - testza.AssertEqual(t, s, p2.InfoPrefixStyle) -} - -func TestTheme_WithPrimaryStyle(t *testing.T) { - s := pterm.Style{pterm.FgRed, pterm.BgBlue, pterm.Bold} - p := pterm.Theme{} - p2 := p.WithPrimaryStyle(s) - - testza.AssertEqual(t, s, p2.PrimaryStyle) -} - -func TestTheme_WithSecondaryStyle(t *testing.T) { - s := pterm.Style{pterm.FgRed, pterm.BgBlue, pterm.Bold} - p := pterm.Theme{} - p2 := p.WithSecondaryStyle(s) - - testza.AssertEqual(t, s, p2.SecondaryStyle) -} - -func TestTheme_WithSuccessMessageStyle(t *testing.T) { - s := pterm.Style{pterm.FgRed, pterm.BgBlue, pterm.Bold} - p := pterm.Theme{} - p2 := p.WithSuccessMessageStyle(s) - - testza.AssertEqual(t, s, p2.SuccessMessageStyle) -} - -func TestTheme_WithSuccessPrefixStyle(t *testing.T) { - s := pterm.Style{pterm.FgRed, pterm.BgBlue, pterm.Bold} - p := pterm.Theme{} - p2 := p.WithSuccessPrefixStyle(s) - - testza.AssertEqual(t, s, p2.SuccessPrefixStyle) -} - -func TestTheme_WithWarningMessageStyle(t *testing.T) { - s := pterm.Style{pterm.FgRed, pterm.BgBlue, pterm.Bold} - p := pterm.Theme{} - p2 := p.WithWarningMessageStyle(s) - - testza.AssertEqual(t, s, p2.WarningMessageStyle) -} - -func TestTheme_WithWarningPrefixStyle(t *testing.T) { - s := pterm.Style{pterm.FgRed, pterm.BgBlue, pterm.Bold} - p := pterm.Theme{} - p2 := p.WithWarningPrefixStyle(s) - - testza.AssertEqual(t, s, p2.WarningPrefixStyle) -} - -func TestTheme_WithBulletListBulletStyle(t *testing.T) { - s := pterm.Style{pterm.FgRed, pterm.BgBlue, pterm.Bold} - p := pterm.Theme{} - p2 := p.WithBulletListBulletStyle(s) - - testza.AssertEqual(t, s, p2.BulletListBulletStyle) -} - -func TestTheme_WithBulletListTextStyle(t *testing.T) { - s := pterm.Style{pterm.FgRed, pterm.BgBlue, pterm.Bold} - p := pterm.Theme{} - p2 := p.WithBulletListTextStyle(s) - - testza.AssertEqual(t, s, p2.BulletListTextStyle) -} - -func TestTheme_WithLetterStyle(t *testing.T) { - s := pterm.Style{pterm.FgRed, pterm.BgBlue, pterm.Bold} - p := pterm.Theme{} - p2 := p.WithLetterStyle(s) - - testza.AssertEqual(t, s, p2.LetterStyle) -} - -func TestTheme_WithDebugMessageStyle(t *testing.T) { - s := pterm.Style{pterm.FgRed, pterm.BgBlue, pterm.Bold} - p := pterm.Theme{} - p2 := p.WithDebugMessageStyle(s) - - testza.AssertEqual(t, s, p2.DebugMessageStyle) -} - -func TestTheme_WithDebugPrefixStyle(t *testing.T) { - s := pterm.Style{pterm.FgRed, pterm.BgBlue, pterm.Bold} - p := pterm.Theme{} - p2 := p.WithDebugPrefixStyle(s) - - testza.AssertEqual(t, s, p2.DebugPrefixStyle) -} - -func TestTheme_WithTreeStyle(t *testing.T) { - s := pterm.Style{pterm.FgRed, pterm.BgBlue, pterm.Bold} - p := pterm.Theme{} - p2 := p.WithTreeStyle(s) - - testza.AssertEqual(t, s, p2.TreeStyle) -} - -func TestTheme_WithTreeTextStyle(t *testing.T) { - s := pterm.Style{pterm.FgRed, pterm.BgBlue, pterm.Bold} - p := pterm.Theme{} - p2 := p.WithTreeTextStyle(s) - - testza.AssertEqual(t, s, p2.TreeTextStyle) -} - -func TestTheme_WithBoxStyle(t *testing.T) { - s := pterm.Style{pterm.FgRed, pterm.BgBlue, pterm.Bold} - p := pterm.Theme{} - p2 := p.WithBoxStyle(s) - - testza.AssertEqual(t, s, p2.BoxStyle) -} - -func TestTheme_WithBoxTextStyle(t *testing.T) { - s := pterm.Style{pterm.FgRed, pterm.BgBlue, pterm.Bold} - p := pterm.Theme{} - p2 := p.WithBoxTextStyle(s) - - testza.AssertEqual(t, s, p2.BoxTextStyle) -} - -func TestTheme_WithBarLabelStyle(t *testing.T) { - s := pterm.Style{pterm.FgRed, pterm.BgBlue, pterm.Bold} - p := pterm.Theme{} - p2 := p.WithBarLabelStyle(s) - - testza.AssertEqual(t, s, p2.BarLabelStyle) -} - -func TestTheme_WithBarStyle(t *testing.T) { - s := pterm.Style{pterm.FgRed, pterm.BgBlue, pterm.Bold} - p := pterm.Theme{} - p2 := p.WithBarStyle(s) - - testza.AssertEqual(t, s, p2.BarStyle) +func TestTheme_WithMethods(t *testing.T) { + testWithMethods(t, pterm.Theme{}) } diff --git a/tree_printer_test.go b/tree_printer_test.go index 326e10899..4b48516a2 100644 --- a/tree_printer_test.go +++ b/tree_printer_test.go @@ -1,7 +1,6 @@ package pterm_test import ( - "os" "testing" "github.com/MarvinJWendt/testza" @@ -17,6 +16,10 @@ func TestTreePrinterNilPrint(t *testing.T) { testza.AssertNotNil(t, content) } +func TestTreePrinter_WithMethods(t *testing.T) { + testWithMethods(t, pterm.TreePrinter{}, "WithTopRightDownStringOngoing") +} + func TestTreePrinter_Render(t *testing.T) { pterm.DefaultTree.WithRoot(pterm.NewTreeFromLeveledList([]pterm.LeveledListItem{ {Level: 0, Text: "Hello, World!"}, @@ -117,92 +120,3 @@ func TestTreePrinter_NewTreeFromLeveledListNegativeLevel(t *testing.T) { pterm.LeveledListItem{Level: 0, Text: "2.3"}}), p2.Root) testza.AssertZero(t, p.Root) } - -func TestTreePrinter_WithHorizontalString(t *testing.T) { - p := pterm.TreePrinter{} - p2 := p.WithHorizontalString("-") - - testza.AssertEqual(t, "-", p2.HorizontalString) - testza.AssertZero(t, p.HorizontalString) -} - -func TestTreePrinter_WithRoot(t *testing.T) { - p := pterm.TreePrinter{} - p2 := p.WithRoot(pterm.TreeNode{ - Children: nil, - Text: "Hello, World!", - }) - - testza.AssertEqual(t, pterm.TreeNode{ - Children: nil, - Text: "Hello, World!", - }, p2.Root) - testza.AssertZero(t, p.Root) -} - -func TestTreePrinter_WithTreeStyle(t *testing.T) { - p := pterm.TreePrinter{} - s := pterm.NewStyle(pterm.FgRed, pterm.BgRed, pterm.Bold) - p2 := p.WithTreeStyle(s) - - testza.AssertEqual(t, s, p2.TreeStyle) - testza.AssertZero(t, p.TreeStyle) -} - -func TestTreePrinter_WithTextStyle(t *testing.T) { - p := pterm.TreePrinter{} - s := pterm.NewStyle(pterm.FgRed, pterm.BgRed, pterm.Bold) - p2 := p.WithTextStyle(s) - - testza.AssertEqual(t, s, p2.TextStyle) - testza.AssertZero(t, p.TextStyle) -} - -func TestTreePrinter_WithTopRightCornerString(t *testing.T) { - p := pterm.TreePrinter{} - p2 := p.WithTopRightCornerString("-") - - testza.AssertEqual(t, "-", p2.TopRightCornerString) - testza.AssertZero(t, p.TopRightCornerString) -} - -func TestTreePrinter_WithTopRightDownStringOngoing(t *testing.T) { - p := pterm.TreePrinter{} - p2 := p.WithTopRightDownStringOngoing("-") - - testza.AssertEqual(t, "-", p2.TopRightDownString) - testza.AssertZero(t, p.TopRightDownString) -} - -func TestTreePrinter_WithVerticalString(t *testing.T) { - p := pterm.TreePrinter{} - p2 := p.WithVerticalString("-") - - testza.AssertEqual(t, "-", p2.VerticalString) - testza.AssertZero(t, p.VerticalString) -} - -func TestTreePrinter_WithIndent(t *testing.T) { - p := pterm.TreePrinter{} - p2 := p.WithIndent(3) - - testza.AssertEqual(t, 3, p2.Indent) - testza.AssertZero(t, p.Indent) -} - -func TestTreePrinter_WithIndentInvalid(t *testing.T) { - p := pterm.TreePrinter{} - p2 := p.WithIndent(0) - - testza.AssertEqual(t, 1, p2.Indent) - testza.AssertZero(t, p.Indent) -} - -func TestTreePrinter_WithWriter(t *testing.T) { - p := pterm.TreePrinter{} - s := os.Stderr - p2 := p.WithWriter(s) - - testza.AssertEqual(t, s, p2.Writer) - testza.AssertZero(t, p.Writer) -} diff --git a/utils_test.go b/utils_test.go index 521df4522..bce979780 100644 --- a/utils_test.go +++ b/utils_test.go @@ -1,14 +1,18 @@ package pterm_test import ( + "atomicgo.dev/keyboard/keys" "bytes" + "encoding/csv" "fmt" + "github.com/MarvinJWendt/testza" + "github.com/pterm/pterm" "io" "os" + "reflect" + "strings" "testing" - - "github.com/MarvinJWendt/testza" - "github.com/pterm/pterm" + "time" ) var printables = []interface{}{"Hello, World!", 1337, true, false, -1337, 'c', 1.5, "\\", "%s"} @@ -17,6 +21,7 @@ var terminalHeight = 60 func TestMain(m *testing.M) { pterm.SetForcedTerminalSize(terminalWidth, terminalHeight) + os.Stderr = os.NewFile(0, os.DevNull) setupStdoutCapture() exitVal := m.Run() teardownStdoutCapture() @@ -221,3 +226,202 @@ func readStdout() string { func proxyToDevNull() { pterm.SetDefaultOutput(os.NewFile(0, os.DevNull)) } + +// testWithMethods calls all methods of a struct starting with "With" +// and checks if the corresponding option has changed. +func testWithMethods(t *testing.T, inputStruct any, blacklist ...string) { + value := reflect.ValueOf(inputStruct) + typeOf := value.Type() + + for i := 0; i < value.NumMethod(); i++ { + method := typeOf.Method(i) + + // Check if method is blacklisted + if strings.Contains(strings.Join(blacklist, ","), method.Name) { + continue + } + + if strings.HasPrefix(method.Name, "With") { + t.Run(method.Name, func(t *testing.T) { + // Check if method starts with 'With' + // Check if method has at least one input parameter + if method.Type.NumIn() >= 2 { // 2 because the first input is always the receiver + optionName := method.Name[4:] + var oldOptionValue any + if reflect.Indirect(value).FieldByName(optionName).IsValid() { + oldOptionValue = reflect.Indirect(value).FieldByName(optionName).Interface() + } + + params := make([]reflect.Value, 0, method.Type.NumIn()-1) + isVariadic := method.Type.IsVariadic() + + for j := 1; j < method.Type.NumIn(); j++ { + paramType := method.Type.In(j) + if isVariadic && j == method.Type.NumIn()-1 { + // If it's a variadic function, the last parameter is a slice + paramType = paramType.Elem() + } + + var param reflect.Value + switch paramType.Kind() { + case reflect.String: + param = reflect.ValueOf("helloworld") + case reflect.Float32: + param = reflect.ValueOf(1.0) + case reflect.Float64: + param = reflect.ValueOf(1.0) + case reflect.Int64: + switch paramType { + case reflect.TypeOf(time.Duration(0)): + param = reflect.ValueOf(time.Second) + default: + param = reflect.ValueOf(1) + } + case reflect.Int: + switch paramType { + case reflect.TypeOf(pterm.LogFormatter(0)): + param = reflect.ValueOf(pterm.LogFormatter(1)) + case reflect.TypeOf(pterm.LogLevel(0)): + param = reflect.ValueOf(pterm.LogLevel(1)) + case reflect.TypeOf(keys.KeyCode(0)): + param = reflect.ValueOf(keys.Enter) + default: + param = reflect.ValueOf(1) + } + case reflect.Bool: + param = reflect.ValueOf(!oldOptionValue.(bool)) + case reflect.Map: + switch paramType { + case reflect.TypeOf(map[string]string{}): + param = reflect.ValueOf(map[string]string{"a": "b", "c": "d"}) + case reflect.TypeOf(map[string]pterm.Style{}): + param = reflect.ValueOf(map[string]pterm.Style{"a": pterm.Style{pterm.FgRed}}) + } + case reflect.Slice: + switch paramType { + case reflect.TypeOf(pterm.Style{}): + param = reflect.ValueOf(pterm.Style{pterm.FgRed}) + case reflect.TypeOf([]string{}): + param = reflect.ValueOf([]string{"helloworld", "helloworld", "helloworld"}) + case reflect.TypeOf([][]string{}): + param = reflect.ValueOf([][]string{{"helloworld", "helloworld", "helloworld"}, {"helloworld", "helloworld", "helloworld"}}) + case reflect.TypeOf([]bool{}): + param = reflect.ValueOf([]bool{true}) + case reflect.TypeOf([]pterm.Bar{}): + param = reflect.ValueOf(pterm.Bars{ + {"a", 1, pterm.NewStyle(), pterm.NewStyle()}, + {"b", 2, pterm.NewStyle(), pterm.NewStyle()}, + {"c", 3, pterm.NewStyle(), pterm.NewStyle()}, + {"d", 4, pterm.NewStyle(), pterm.NewStyle()}, + }) + case reflect.TypeOf(pterm.Bars{}): + param = reflect.ValueOf(pterm.Bars{ + {"a", 1, pterm.NewStyle(), pterm.NewStyle()}, + {"b", 2, pterm.NewStyle(), pterm.NewStyle()}, + {"c", 3, pterm.NewStyle(), pterm.NewStyle()}, + {"d", 4, pterm.NewStyle(), pterm.NewStyle()}, + }) + case reflect.TypeOf(pterm.Letters{}): + param = reflect.ValueOf(pterm.Letters{ + {"a", pterm.NewStyle(), pterm.NewRGB(255, 0, 0)}, + {"b", pterm.NewStyle(), pterm.NewRGB(0, 255, 0)}, + {"c", pterm.NewStyle(), pterm.NewRGB(0, 0, 255)}, + }) + case reflect.TypeOf(pterm.Panels{}): + param = reflect.ValueOf(pterm.Panels{ + []pterm.Panel{ + {Data: "a"}, + {Data: "b"}, + {Data: "c"}, + }, + }) + case reflect.TypeOf([]pterm.BulletListItem{}): + param = reflect.ValueOf([]pterm.BulletListItem{ + {1, "a", pterm.NewStyle(), "b", pterm.NewStyle()}, + }) + } + case reflect.Pointer: + switch paramType { + case reflect.TypeOf(&pterm.Style{}): + param = reflect.ValueOf(pterm.NewStyle(pterm.FgRed)) + case reflect.TypeOf(&csv.Reader{}): + param = reflect.ValueOf(csv.NewReader(strings.NewReader("a,b,c\n1,2,3\n4,5,6\nx,y,z"))) + case reflect.TypeOf(&pterm.Checkmark{}): + param = reflect.ValueOf(&pterm.Checkmark{Checked: "yes", Unchecked: "no"}) + } + case reflect.Interface: + t.Skipf("Cannot check With method %s, because it has an interface parameter.", method.Name) + case reflect.Struct: + switch paramType { + case reflect.TypeOf(pterm.TableData{}): + param = reflect.ValueOf(pterm.TableData{ + {"a", "b", "c"}, + {"1", "2", "3"}, + {"4", "5", "6"}, + {"x", "y", "z"}, + }) + case reflect.TypeOf(pterm.Checkmark{}): + param = reflect.ValueOf(pterm.Checkmark{Checked: "yes", Unchecked: "no"}) + case reflect.TypeOf(pterm.BoxPrinter{}): + param = reflect.ValueOf(pterm.DefaultBox) + case reflect.TypeOf(pterm.Prefix{}): + param = reflect.ValueOf(pterm.Prefix{ + Text: "asd", + Style: pterm.NewStyle(), + }) + case reflect.TypeOf(pterm.Scope{}): + param = reflect.ValueOf(pterm.Scope{ + Text: "asd", + Style: pterm.NewStyle(), + }) + case reflect.TypeOf(pterm.TreeNode{}): + param = reflect.ValueOf(pterm.TreeNode{ + Text: "asd", + Children: []pterm.TreeNode{}, + }) + } + + default: + // Unsupported type, log error and skip this method + t.Logf("Unsupported parameter type %s for method %s, skipping", paramType, method.Name) + continue + } + + params = append(params, param) + } + + func() { + defer func() { + if r := recover(); r != nil { + t.Errorf("Panic occurred while calling method %s: %v", method.Name, r) + } + }() + + results := value.Method(i).Call(params) + if len(results) > 0 { + newStruct := results[0] + inputStruct = newStruct.Interface() + + newOptionValue := reflect.Indirect(newStruct).FieldByName(optionName).Interface() + if reflect.DeepEqual(oldOptionValue, newOptionValue) { + t.Errorf("Option %s did not change after calling method %s (old: %s, new: %s)", optionName, method.Name, oldOptionValue, newOptionValue) + } + } + }() + } + }) + } + + } +} + +func printerTest(t *testing.T, f func()) { + teardownStdoutCapture() + f() + setupStdoutCapture() + f() + err := testza.SnapshotCreateOrValidate(t, t.Name(), outBuf.String()) + if err != nil { + panic(err) + } +}