def as_compact_ascii(self):
self._fix_maze()
vertex="·"
lines = [vertex + ("-"+vertex)*self.width]
for y in range(self.height):
lines.append("|" + "".join("{}{}".format("S" if (x, y) in self.starts else "E" if (x, y) in self.exits else " ",
" |"[x == self.width - 1 or int(self.hwalls[x,y])])
for x in range(self.width)))
lines.append(vertex + "".join(("-" if y == self.height - 1 or self.vwalls[x,y] else " ")+vertex
for x in range(self.width)))
return "\n".join(lines)