refactor to use [][]rune instead of []string