diff options
| -rw-r--r-- | idatui/app.py | 27 | ||||
| -rw-r--r-- | idatui/kittygfx.py | 36 | ||||
| -rw-r--r-- | logo-trans.png | bin | 0 -> 1740746 bytes | |||
| -rw-r--r-- | logo.ans | 60 | ||||
| -rw-r--r-- | logo.png | bin | 343142 -> 818833 bytes | |||
| -rw-r--r-- | tools/make_logo_ans.py | 90 |
6 files changed, 169 insertions, 44 deletions
diff --git a/idatui/app.py b/idatui/app.py index b3367c4..fc19fa5 100644 --- a/idatui/app.py +++ b/idatui/app.py @@ -3757,9 +3757,25 @@ class ConfirmScreen(ModalScreen): _REPO_ROOT = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) _LOGO_PATH = os.path.join(_REPO_ROOT, "logo.ans") #: The same artwork as a real image, for terminals that can draw one. logo.ans -#: is 60x33 cells of half-blocks, i.e. 60x66 pixels; this is 474x516. +#: is half-blocks (two pixels per cell); this is a transparent PNG at 768px. LOGO_PNG = os.path.join(_REPO_ROOT, "logo.png") -_LOGO_CELLS = (60, 33) # what logo.ans occupies, so either path lays out the same +_LOGO_BOX = (60, 33) # the most room the splash will give the art +_logo_cells: tuple[int, int] | None = None + + +def logo_cells() -> tuple[int, int]: + """Cell footprint for the image, derived from the artwork and the terminal's + real cell size rather than hardcoded. + + Cells are nowhere near square (9x22 px here, 1:2.44), so a fixed box picked + for one aspect ratio stretches any other. Recomputing means the art can be + replaced without anyone remembering to edit a constant. + """ + global _logo_cells + if _logo_cells is None: + px = kittygfx.png_size(LOGO_PNG) + _logo_cells = kittygfx.fit(px, *_LOGO_BOX) if px else _LOGO_BOX + return _logo_cells _logo_cache: object = False # False == not yet loaded (None == absent/unreadable) @@ -3805,9 +3821,10 @@ class LoadingScreen(ModalScreen): # The image is anchored to screen cells rather than composited by # Textual (no unicode-placeholder support here), so the widget is # only reserved blank space -- see _place_logo. - cols, rows = _LOGO_CELLS + cols, rows = logo_cells() kittygfx.log(f"compose: supported={kittygfx.supported()} " - f"app.size={self.app.size} fits={self._fits(rows)}") + f"app.size={self.app.size} cells={cols}x{rows} " + f"fits={self._fits(rows)}") if kittygfx.supported() and self._fits(rows): self._image = True blank = Static("\n" * (rows - 1), id="loading-image") @@ -3859,7 +3876,7 @@ class LoadingScreen(ModalScreen): kittygfx.log(f"place_logo: region={region}") if not region.width or not region.height: return - cols, rows = _LOGO_CELLS + cols, rows = logo_cells() col = region.x + max((region.width - cols) // 2, 0) # centre it kittygfx.place(region.y, col, min(cols, region.width), rows) diff --git a/idatui/kittygfx.py b/idatui/kittygfx.py index b8afeb4..e53fba3 100644 --- a/idatui/kittygfx.py +++ b/idatui/kittygfx.py @@ -48,6 +48,10 @@ LOGO_ID = 0x1DA7 _supported: bool | None = None _uploaded: dict[int, tuple[int, int]] = {} # image id -> (pixel w, pixel h) +#: Terminal cell size in pixels, asked for in the same round trip as the +#: graphics query. Cells are nothing like a fixed 1:2 -- this box reports 9x22, +#: i.e. 1:2.44 -- and getting it wrong stretches the image. +_cell: tuple[int, int] | None = None def log(msg: str) -> None: @@ -81,7 +85,9 @@ def _query_tty(timeout: float = 2.0) -> bool: return False try: ttymod.setraw(fd) - os.write(fd, b"\033_Gi=31,s=1,v=1,a=q,t=d,f=24;AAAA\033\\\033[c") + # graphics query + cell-size query + DA1. DA1 is answered by everything, + # so it marks the end of the replies and nothing has to be timed. + os.write(fd, b"\033_Gi=31,s=1,v=1,a=q,t=d,f=24;AAAA\033\\\033[16t\033[c") buf = b"" deadline = time.monotonic() + timeout while time.monotonic() < deadline: @@ -92,8 +98,15 @@ def _query_tty(timeout: float = 2.0) -> bool: if not chunk: break buf += chunk - if re.search(rb"\033\[\?[0-9;]*c", buf): # DA1: the answer is in + if re.search(rb"\033\[\?[0-9;]*c", buf): # DA1: the answers are in break + global _cell + m = re.search(rb"\033\[6;(\d+);(\d+)t", buf) # CSI 6 ; height ; width t + if m: + ch, cw = int(m.group(1)), int(m.group(2)) + if 0 < cw < 100 and 0 < ch < 200: + _cell = (cw, ch) + log(f"cell size {cw}x{ch}px") return bool(re.search(rb"\033_G[^\033]*;OK\033\\", buf)) except OSError: return False @@ -226,13 +239,26 @@ def delete(image_id: int = LOGO_ID) -> None: _uploaded.pop(image_id, None) +def cell_size() -> tuple[int, int]: + """(width, height) of a terminal cell in pixels. + + Measured during the graphics query when the terminal answers CSI 16 t; + otherwise a 10x20 guess, which is only ever used to keep the aspect ratio + honest. + """ + return _cell or (10, 20) + + def fit(px: tuple[int, int], max_cols: int, max_rows: int, - cell: tuple[int, int] = (10, 20)) -> tuple[int, int]: + cell: tuple[int, int] | None = None) -> tuple[int, int]: """Cell size that fits ``max_cols`` x ``max_rows`` keeping the aspect ratio. - Cells are about twice as tall as they are wide, so a naive cols=rows box - would squash the image; ``cell`` is that ratio in pixels. + Cells are far from square -- this box reports 9x22 px -- so a naive + cols==rows box stretches the image; ``cell`` is that ratio in pixels and + defaults to what the terminal actually said. """ + if cell is None: + cell = cell_size() w, h = px if w <= 0 or h <= 0: return (max_cols, max_rows) diff --git a/logo-trans.png b/logo-trans.png Binary files differnew file mode 100644 index 0000000..65d576b --- /dev/null +++ b/logo-trans.png @@ -1,34 +1,26 @@ -[?25l[0m[38;5;16;48;5;16mâ–„[38;5;234mâ–„[38;5;248mâ–„[38;5;250mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[38;5;145mâ–„[38;5;248mâ–„[38;5;247mâ–„[38;5;246mâ–„[38;5;248mâ–„[38;5;250mâ–„â–„[38;5;249mâ–„[38;5;246mâ–„[38;5;244mâ–„â–„[38;5;247mâ–„[38;5;249mâ–„â–„[38;5;250mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[38;5;240mâ–„[38;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[38;5;239;48;5;239mâ–„[38;5;231;48;5;231mâ–„â–„â–„â–„â–„â–„â–„â–„â–„[38;5;251mâ–„[38;5;240;48;5;254mâ–„[38;5;235;48;5;251mâ–„[38;5;234;48;5;243mâ–„[48;5;239mâ–„[48;5;238mâ–„[48;5;237mâ–„[48;5;236mâ–„[48;5;239mâ–„[38;5;235;48;5;102mâ–„[48;5;246mâ–„[38;5;234;48;5;240mâ–„[48;5;237mâ–„[48;5;236mâ–„[38;5;233mâ–„[48;5;237mâ–„[48;5;240mâ–„[38;5;234;48;5;242mâ–„[48;5;247mâ–„[38;5;235;48;5;251mâ–„[38;5;237;48;5;253mâ–„[38;5;243;48;5;231mâ–„[38;5;7mâ–„[38;5;231mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[38;5;250;48;5;250mâ–„[38;5;16;48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[38;5;239;48;5;239mâ–„[38;5;231;48;5;231mâ–„â–„â–„â–„â–„[38;5;252mâ–„[38;5;59;48;5;255mâ–„[38;5;235;48;5;251mâ–„[38;5;234;48;5;246mâ–„[48;5;238mâ–„[48;5;235mâ–„â–„[48;5;234mâ–„[38;5;235mâ–„â–„[38;5;237;48;5;233mâ–„[38;5;95;48;5;235mâ–„[48;5;8mâ–„[38;5;235;48;5;236mâ–„[38;5;233;48;5;234mâ–„[38;5;234;48;5;233mâ–„[38;5;232mâ–„â–„[38;5;233mâ–„â–„â–„[38;5;234mâ–„[38;5;235;48;5;234mâ–„[38;5;234mâ–„â–„[38;5;233;48;5;235mâ–„[38;5;234;48;5;236mâ–„[48;5;243mâ–„[38;5;237;48;5;253mâ–„[38;5;244;48;5;231mâ–„[38;5;251mâ–„[38;5;254mâ–„[38;5;255mâ–„[38;5;231mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[38;5;250;48;5;250mâ–„[38;5;16;48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[38;5;239;48;5;239mâ–„[38;5;231;48;5;231mâ–„â–„â–„[38;5;254mâ–„[38;5;236;48;5;145mâ–„[38;5;233;48;5;236mâ–„[48;5;233mâ–„[38;5;235mâ–„[48;5;236mâ–„[38;5;234;48;5;235mâ–„[38;5;8;48;5;234mâ–„[38;5;101;48;5;235mâ–„[38;5;138;48;5;239mâ–„[38;5;144;48;5;95mâ–„[38;5;181;48;5;101mâ–„[48;5;138mâ–„[38;5;187;48;5;144mâ–„[38;5;144;48;5;101mâ–„[38;5;8;48;5;236mâ–„[38;5;233;48;5;233mâ–„â–„â–„â–„â–„â–„[48;5;234mâ–„â–„[48;5;235mâ–„[38;5;234;48;5;234mâ–„[38;5;233;48;5;233mâ–„[38;5;232mâ–„[38;5;233mâ–„â–„[38;5;232mâ–„[38;5;233;48;5;234mâ–„[38;5;234mâ–„[48;5;236mâ–„[48;5;241mâ–„[38;5;235;48;5;249mâ–„[38;5;240;48;5;255mâ–„[38;5;250;48;5;231mâ–„[38;5;231mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[38;5;250;48;5;250mâ–„[38;5;16;48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[38;5;239;48;5;239mâ–„[38;5;231;48;5;231mâ–„â–„â–„[38;5;243;48;5;248mâ–„[38;5;233;48;5;234mâ–„[38;5;234;48;5;233mâ–„[38;5;235;48;5;234mâ–„[38;5;234mâ–„â–„[38;5;95;48;5;236mâ–„[38;5;144;48;5;137mâ–„[38;5;180;48;5;144mâ–„[38;5;181;48;5;181mâ–„[38;5;187mâ–„[48;5;187mâ–„â–„[38;5;188;48;5;188mâ–„[48;5;187mâ–„[38;5;181;48;5;101mâ–„[38;5;95;48;5;236mâ–„[38;5;237;48;5;234mâ–„[38;5;234;48;5;233mâ–„â–„[38;5;233mâ–„[38;5;232mâ–„[38;5;233mâ–„[38;5;234mâ–„[38;5;235;48;5;234mâ–„[38;5;234;48;5;233mâ–„[38;5;233mâ–„â–„â–„[38;5;232mâ–„â–„[38;5;233mâ–„â–„[38;5;234;48;5;234mâ–„â–„â–„â–„[48;5;237mâ–„[38;5;239;48;5;250mâ–„[38;5;254;48;5;231mâ–„[38;5;231mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[38;5;250;48;5;250mâ–„[38;5;16;48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[38;5;239;48;5;239mâ–„[38;5;231;48;5;231mâ–„[38;5;254mâ–„[38;5;237;48;5;251mâ–„[38;5;233;48;5;236mâ–„[38;5;235;48;5;234mâ–„[38;5;233;48;5;235mâ–„[38;5;232;48;5;233mâ–„[38;5;236;48;5;234mâ–„[38;5;95;48;5;238mâ–„[38;5;138;48;5;137mâ–„[38;5;180;48;5;180mâ–„[38;5;181;48;5;181mâ–„[38;5;187;48;5;187mâ–„â–„â–„â–„[48;5;188mâ–„â–„[48;5;252mâ–„[48;5;181mâ–„[38;5;181;48;5;138mâ–„[38;5;144;48;5;95mâ–„[38;5;137;48;5;238mâ–„[38;5;95;48;5;235mâ–„[38;5;235;48;5;233mâ–„[38;5;234mâ–„[38;5;233;48;5;234mâ–„[38;5;234;48;5;235mâ–„[48;5;234mâ–„[38;5;233;48;5;233mâ–„â–„â–„[48;5;232mâ–„â–„[48;5;233mâ–„[38;5;234mâ–„[48;5;234mâ–„â–„[38;5;233;48;5;233mâ–„â–„â–„[38;5;234;48;5;235mâ–„[38;5;59;48;5;248mâ–„[38;5;254;48;5;231mâ–„[38;5;252mâ–„[38;5;244mâ–„[38;5;59;48;5;255mâ–„[38;5;242;48;5;231mâ–„[38;5;145mâ–„[38;5;255mâ–„[38;5;231mâ–„â–„â–„â–„â–„â–„[38;5;250;48;5;250mâ–„[38;5;16;48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[38;5;239;48;5;239mâ–„[38;5;231;48;5;231mâ–„[38;5;243;48;5;247mâ–„[38;5;234;48;5;233mâ–„[38;5;233;48;5;234mâ–„â–„[38;5;234;48;5;233mâ–„[38;5;235mâ–„[38;5;95;48;5;95mâ–„[38;5;138;48;5;137mâ–„[38;5;144;48;5;144mâ–„[38;5;180;48;5;180mâ–„[38;5;181;48;5;181mâ–„â–„[38;5;187;48;5;187mâ–„â–„â–„â–„â–„â–„â–„â–„â–„[48;5;180mâ–„[38;5;144;48;5;137mâ–„[38;5;95;48;5;240mâ–„[38;5;237;48;5;235mâ–„[38;5;234;48;5;233mâ–„â–„â–„â–„[38;5;233;48;5;232mâ–„[48;5;233mâ–„â–„â–„â–„[48;5;234mâ–„â–„[48;5;233mâ–„â–„[48;5;232mâ–„â–„[48;5;233mâ–„[38;5;234;48;5;235mâ–„[38;5;237;48;5;247mâ–„[38;5;233;48;5;237mâ–„[48;5;234mâ–„â–„[38;5;234;48;5;236mâ–„â–„[38;5;236;48;5;244mâ–„[38;5;244;48;5;255mâ–„[38;5;7;48;5;231mâ–„[38;5;255mâ–„[38;5;231mâ–„â–„â–„[38;5;250;48;5;250mâ–„[38;5;16;48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[38;5;239;48;5;239mâ–„[38;5;231;48;5;231mâ–„[38;5;244;48;5;242mâ–„[38;5;233;48;5;233mâ–„[38;5;232;48;5;232mâ–„[38;5;233;48;5;233mâ–„[38;5;232;48;5;234mâ–„[38;5;237;48;5;235mâ–„[38;5;95;48;5;95mâ–„[38;5;138;48;5;138mâ–„â–„[38;5;144;48;5;144mâ–„[48;5;181mâ–„[38;5;181mâ–„â–„[48;5;187mâ–„[38;5;187mâ–„â–„â–„â–„â–„â–„â–„â–„[38;5;181;48;5;181mâ–„[38;5;180;48;5;138mâ–„[38;5;137;48;5;95mâ–„[38;5;95;48;5;236mâ–„[38;5;237;48;5;234mâ–„[38;5;234;48;5;233mâ–„[38;5;233mâ–„[38;5;232mâ–„[38;5;233;48;5;232mâ–„[38;5;232mâ–„â–„â–„[38;5;233mâ–„[48;5;233mâ–„[48;5;234mâ–„[48;5;233mâ–„[38;5;232;48;5;232mâ–„[38;5;233mâ–„[38;5;232;48;5;233mâ–„â–„[38;5;233;48;5;234mâ–„[48;5;233mâ–„[38;5;235mâ–„[38;5;232;48;5;232mâ–„[38;5;233;48;5;233mâ–„â–„[38;5;234;48;5;234mâ–„[48;5;235mâ–„[38;5;235;48;5;237mâ–„[38;5;236;48;5;244mâ–„[38;5;246;48;5;255mâ–„[38;5;231;48;5;231mâ–„â–„[38;5;250;48;5;250mâ–„[38;5;16;48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[38;5;239;48;5;239mâ–„[38;5;231;48;5;231mâ–„[48;5;252mâ–„[38;5;102;48;5;235mâ–„[38;5;233;48;5;233mâ–„[38;5;232mâ–„[38;5;233mâ–„[38;5;237;48;5;238mâ–„[38;5;238;48;5;95mâ–„[38;5;8mâ–„[38;5;237mâ–„[38;5;8;48;5;137mâ–„[38;5;95;48;5;138mâ–„[38;5;138;48;5;181mâ–„[38;5;181mâ–„â–„â–„â–„â–„[38;5;144mâ–„[38;5;137mâ–„â–„â–„[38;5;138mâ–„[38;5;180mâ–„â–„[48;5;180mâ–„[38;5;138;48;5;138mâ–„[38;5;95;48;5;95mâ–„[48;5;240mâ–„[38;5;238;48;5;236mâ–„[38;5;233;48;5;233mâ–„â–„[48;5;232mâ–„[38;5;232mâ–„â–„â–„[38;5;233mâ–„[48;5;233mâ–„â–„[48;5;232mâ–„[38;5;232mâ–„â–„â–„â–„[48;5;233mâ–„[38;5;233mâ–„[38;5;235;48;5;235mâ–„[38;5;233;48;5;233mâ–„[38;5;232;48;5;232mâ–„â–„[38;5;233mâ–„[48;5;233mâ–„[48;5;234mâ–„[38;5;236;48;5;237mâ–„[38;5;253;48;5;254mâ–„[38;5;231;48;5;231mâ–„[38;5;250;48;5;250mâ–„[38;5;16;48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[38;5;234;48;5;239mâ–„[38;5;238;48;5;231mâ–„â–„[38;5;234;48;5;244mâ–„[38;5;16;48;5;233mâ–„[48;5;232mâ–„[38;5;232;48;5;233mâ–„[38;5;234;48;5;95mâ–„[38;5;235;48;5;137mâ–„[48;5;138mâ–„[48;5;137mâ–„[48;5;95mâ–„[38;5;234;48;5;237mâ–„[48;5;101mâ–„[38;5;236;48;5;144mâ–„[38;5;237;48;5;181mâ–„â–„[38;5;236mâ–„[48;5;138mâ–„[48;5;137mâ–„â–„[48;5;95mâ–„â–„â–„[48;5;101mâ–„[38;5;235;48;5;137mâ–„â–„â–„[38;5;234;48;5;95mâ–„[38;5;237mâ–„[38;5;8;48;5;236mâ–„[38;5;236;48;5;234mâ–„[38;5;234mâ–„[38;5;233;48;5;233mâ–„[48;5;232mâ–„[38;5;232mâ–„â–„â–„[38;5;233;48;5;233mâ–„â–„[38;5;234mâ–„[38;5;233;48;5;232mâ–„[48;5;233mâ–„â–„[48;5;232mâ–„[48;5;233mâ–„[38;5;232;48;5;232mâ–„[38;5;233;48;5;234mâ–„[38;5;236;48;5;235mâ–„[38;5;233;48;5;232mâ–„[38;5;234;48;5;233mâ–„[38;5;236mâ–„[38;5;235mâ–„[38;5;234mâ–„[38;5;244;48;5;59mâ–„[38;5;231;48;5;255mâ–„[48;5;231mâ–„[38;5;250;48;5;250mâ–„[38;5;16;48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[38;5;235mâ–„[38;5;59mâ–„[38;5;232;48;5;232mâ–„[38;5;246;48;5;244mâ–„[38;5;243;48;5;234mâ–„[38;5;244;48;5;242mâ–„[48;5;238mâ–„[38;5;8;48;5;16mâ–„[38;5;16mâ–„â–„â–„â–„â–„â–„[38;5;95;48;5;237mâ–„[38;5;187;48;5;242mâ–„[38;5;138;48;5;240mâ–„[38;5;234;48;5;234mâ–„[38;5;246;48;5;244mâ–„[38;5;243;48;5;233mâ–„[38;5;246;48;5;244mâ–„[38;5;244;48;5;236mâ–„[38;5;236;48;5;16mâ–„[38;5;16mâ–„â–„â–„â–„â–„[38;5;237mâ–„[48;5;236mâ–„[38;5;8;48;5;239mâ–„[38;5;235;48;5;235mâ–„[38;5;234;48;5;234mâ–„[38;5;233;48;5;233mâ–„[38;5;232mâ–„[38;5;233;48;5;232mâ–„[38;5;232mâ–„[48;5;233mâ–„â–„[38;5;233;48;5;234mâ–„â–„[48;5;233mâ–„[38;5;234mâ–„[38;5;233;48;5;232mâ–„[48;5;233mâ–„[38;5;232mâ–„â–„â–„[38;5;235;48;5;234mâ–„[38;5;233;48;5;235mâ–„[38;5;232;48;5;236mâ–„[48;5;234mâ–„â–„[38;5;233mâ–„[38;5;236;48;5;243mâ–„[38;5;145;48;5;231mâ–„[38;5;231mâ–„[38;5;250;48;5;250mâ–„[38;5;16;48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[38;5;239;48;5;239mâ–„[38;5;231;48;5;254mâ–„[38;5;255;48;5;237mâ–„[38;5;237;48;5;232mâ–„[38;5;232;48;5;145mâ–„[38;5;248;48;5;242mâ–„[38;5;242;48;5;244mâ–„[38;5;241mâ–„[38;5;247;48;5;236mâ–„[38;5;16;48;5;16mâ–„â–„â–„[38;5;232mâ–„[38;5;95;48;5;233mâ–„[38;5;187;48;5;102mâ–„[48;5;187mâ–„[38;5;181;48;5;138mâ–„[38;5;249;48;5;235mâ–„[38;5;234;48;5;232mâ–„[38;5;16;48;5;7mâ–„[38;5;7;48;5;240mâ–„[38;5;238;48;5;248mâ–„[38;5;102;48;5;244mâ–„[48;5;235mâ–„[38;5;16;48;5;16mâ–„[38;5;232mâ–„[38;5;235mâ–„[38;5;181;48;5;235mâ–„[38;5;137;48;5;137mâ–„[38;5;95;48;5;95mâ–„[48;5;8mâ–„[38;5;237;48;5;235mâ–„[38;5;234;48;5;234mâ–„[38;5;233mâ–„[48;5;233mâ–„[38;5;232;48;5;232mâ–„â–„â–„[48;5;233mâ–„[48;5;232mâ–„â–„[48;5;233mâ–„â–„[48;5;232mâ–„â–„â–„â–„[38;5;16mâ–„[38;5;233mâ–„[48;5;233mâ–„[38;5;232;48;5;232mâ–„â–„[38;5;233mâ–„[48;5;233mâ–„[48;5;234mâ–„[38;5;235;48;5;237mâ–„[38;5;102;48;5;251mâ–„[38;5;250;48;5;250mâ–„[38;5;16;48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[38;5;239;48;5;239mâ–„[38;5;231;48;5;231mâ–„â–„[48;5;255mâ–„[38;5;252;48;5;236mâ–„[38;5;244;48;5;16mâ–„[38;5;138mâ–„[38;5;239mâ–„[38;5;137mâ–„[38;5;138mâ–„â–„[38;5;101mâ–„[38;5;137;48;5;240mâ–„[38;5;187;48;5;181mâ–„[48;5;187mâ–„â–„â–„â–„â–„[38;5;181;48;5;233mâ–„[48;5;16mâ–„â–„â–„â–„â–„[48;5;235mâ–„[38;5;187;48;5;187mâ–„â–„[38;5;138;48;5;138mâ–„[38;5;95;48;5;95mâ–„[48;5;240mâ–„[38;5;236;48;5;237mâ–„[38;5;234;48;5;235mâ–„[38;5;233;48;5;233mâ–„[38;5;232;48;5;232mâ–„[38;5;233mâ–„â–„[38;5;232;48;5;233mâ–„[48;5;232mâ–„[38;5;233;48;5;233mâ–„[48;5;232mâ–„[48;5;233mâ–„[48;5;232mâ–„[38;5;232mâ–„[48;5;16mâ–„[38;5;16mâ–„â–„[38;5;232;48;5;232mâ–„[38;5;233mâ–„[38;5;234;48;5;235mâ–„[38;5;232;48;5;232mâ–„[38;5;233;48;5;233mâ–„â–„[38;5;234mâ–„[38;5;233mâ–„[38;5;235mâ–„[38;5;253;48;5;246mâ–„[38;5;250;48;5;250mâ–„[38;5;16;48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[38;5;239;48;5;239mâ–„[38;5;231;48;5;231mâ–„â–„â–„[38;5;255;48;5;251mâ–„[38;5;144;48;5;138mâ–„[48;5;181mâ–„[38;5;95;48;5;95mâ–„[38;5;137;48;5;138mâ–„[38;5;180;48;5;144mâ–„[38;5;138mâ–„[38;5;137;48;5;137mâ–„[38;5;181;48;5;180mâ–„[38;5;187;48;5;187mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[38;5;181;48;5;181mâ–„[38;5;138;48;5;137mâ–„[38;5;131;48;5;131mâ–„[38;5;95;48;5;95mâ–„[38;5;236;48;5;236mâ–„[38;5;95mâ–„[38;5;237;48;5;234mâ–„[38;5;235;48;5;233mâ–„[38;5;234mâ–„[38;5;232;48;5;232mâ–„â–„[48;5;233mâ–„[38;5;233mâ–„â–„[38;5;232;48;5;232mâ–„â–„â–„[38;5;233mâ–„[38;5;232mâ–„â–„â–„â–„[38;5;234;48;5;235mâ–„[38;5;233;48;5;233mâ–„[38;5;232mâ–„[38;5;233mâ–„[38;5;232mâ–„[48;5;232mâ–„[38;5;234;48;5;234mâ–„[38;5;250;48;5;188mâ–„[48;5;250mâ–„[38;5;16;48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[38;5;239;48;5;239mâ–„[38;5;231;48;5;231mâ–„â–„â–„[48;5;255mâ–„[38;5;254;48;5;249mâ–„[48;5;144mâ–„[38;5;101;48;5;95mâ–„[38;5;131;48;5;137mâ–„[38;5;138;48;5;138mâ–„[38;5;137mâ–„[48;5;180mâ–„[38;5;174;48;5;187mâ–„[38;5;137;48;5;181mâ–„[38;5;131mâ–„[38;5;137mâ–„[38;5;180mâ–„[38;5;181;48;5;187mâ–„â–„â–„â–„â–„[48;5;181mâ–„[48;5;187mâ–„[48;5;181mâ–„[48;5;187mâ–„[48;5;181mâ–„â–„[38;5;180;48;5;138mâ–„[38;5;131;48;5;95mâ–„[38;5;95mâ–„[48;5;8mâ–„[48;5;95mâ–„[48;5;239mâ–„[48;5;236mâ–„[38;5;237mâ–„[38;5;234;48;5;234mâ–„[38;5;232;48;5;233mâ–„â–„[38;5;233mâ–„[38;5;232mâ–„[48;5;232mâ–„â–„â–„[38;5;16mâ–„â–„[38;5;232mâ–„â–„[48;5;233mâ–„[38;5;233mâ–„â–„[48;5;232mâ–„[48;5;233mâ–„[38;5;232mâ–„[38;5;233;48;5;232mâ–„[38;5;239;48;5;235mâ–„[38;5;255;48;5;188mâ–„[38;5;249;48;5;250mâ–„[38;5;16;48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[38;5;239;48;5;239mâ–„[38;5;231;48;5;231mâ–„â–„â–„â–„â–„â–„[38;5;252;48;5;144mâ–„[38;5;95;48;5;95mâ–„[38;5;131;48;5;137mâ–„[38;5;137;48;5;138mâ–„[38;5;95;48;5;239mâ–„[38;5;238;48;5;95mâ–„[38;5;138mâ–„[38;5;181;48;5;137mâ–„[48;5;180mâ–„[38;5;187;48;5;181mâ–„[38;5;181mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[48;5;180mâ–„[38;5;180;48;5;144mâ–„[38;5;137;48;5;138mâ–„[48;5;180mâ–„[38;5;131;48;5;137mâ–„[38;5;238;48;5;95mâ–„[38;5;234mâ–„[38;5;233;48;5;237mâ–„[38;5;232;48;5;233mâ–„[48;5;232mâ–„â–„â–„â–„â–„â–„[38;5;16;48;5;16mâ–„[48;5;232mâ–„â–„[38;5;232;48;5;16mâ–„â–„[48;5;232mâ–„â–„[38;5;234mâ–„[38;5;233mâ–„[38;5;234;48;5;233mâ–„[38;5;239mâ–„[38;5;254;48;5;8mâ–„[38;5;231;48;5;250mâ–„[48;5;231mâ–„[38;5;250;48;5;250mâ–„[38;5;16;48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[38;5;239;48;5;239mâ–„[38;5;231;48;5;231mâ–„â–„â–„â–„â–„â–„[38;5;255;48;5;254mâ–„[38;5;95;48;5;95mâ–„â–„[38;5;137;48;5;137mâ–„[38;5;95;48;5;95mâ–„[48;5;131mâ–„[38;5;131;48;5;180mâ–„â–„[38;5;173;48;5;181mâ–„[38;5;180mâ–„[38;5;144mâ–„[38;5;180mâ–„[38;5;181mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[38;5;138;48;5;95mâ–„[38;5;95mâ–„â–„[38;5;235;48;5;235mâ–„[38;5;232;48;5;233mâ–„[48;5;232mâ–„â–„â–„â–„[38;5;233mâ–„[38;5;232mâ–„[48;5;16mâ–„[48;5;232mâ–„[38;5;233mâ–„â–„[38;5;235mâ–„[38;5;232mâ–„â–„â–„â–„[38;5;240;48;5;240mâ–„[38;5;254;48;5;243mâ–„[38;5;231;48;5;247mâ–„[48;5;254mâ–„[48;5;231mâ–„â–„â–„[38;5;250;48;5;250mâ–„[38;5;16;48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[38;5;239;48;5;239mâ–„[38;5;231;48;5;231mâ–„â–„â–„â–„â–„â–„â–„[38;5;255;48;5;181mâ–„[38;5;95;48;5;95mâ–„[48;5;137mâ–„[38;5;102mâ–„[38;5;59;48;5;95mâ–„[38;5;95;48;5;244mâ–„[38;5;131;48;5;131mâ–„[38;5;137mâ–„[38;5;180mâ–„[38;5;181;48;5;137mâ–„[48;5;180mâ–„[48;5;181mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[38;5;187;48;5;187mâ–„[38;5;247;48;5;144mâ–„[38;5;144;48;5;138mâ–„[38;5;137;48;5;95mâ–„[38;5;236;48;5;235mâ–„[38;5;232;48;5;232mâ–„â–„â–„â–„â–„â–„â–„â–„[38;5;233;48;5;235mâ–„[48;5;234mâ–„[38;5;232;48;5;233mâ–„â–„[38;5;233;48;5;232mâ–„â–„[48;5;233mâ–„[38;5;234mâ–„[38;5;246;48;5;240mâ–„[38;5;255;48;5;254mâ–„[38;5;231;48;5;231mâ–„â–„â–„â–„â–„[38;5;250;48;5;250mâ–„[38;5;16;48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[38;5;239;48;5;239mâ–„[38;5;231;48;5;231mâ–„â–„â–„â–„â–„â–„[38;5;252mâ–„[38;5;246;48;5;255mâ–„[38;5;240;48;5;247mâ–„[38;5;239;48;5;242mâ–„[38;5;95;48;5;239mâ–„[48;5;95mâ–„[38;5;137mâ–„[38;5;138;48;5;137mâ–„[38;5;144;48;5;138mâ–„[48;5;180mâ–„[38;5;180;48;5;181mâ–„[38;5;181mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[38;5;187;48;5;187mâ–„â–„[38;5;144;48;5;247mâ–„[38;5;187;48;5;181mâ–„[38;5;138;48;5;138mâ–„[38;5;239;48;5;238mâ–„[38;5;233;48;5;233mâ–„[38;5;232;48;5;232mâ–„â–„[48;5;233mâ–„[48;5;232mâ–„â–„[38;5;233mâ–„[38;5;239;48;5;233mâ–„[38;5;252;48;5;240mâ–„[38;5;242;48;5;234mâ–„[38;5;236mâ–„[38;5;235;48;5;233mâ–„â–„[38;5;239mâ–„[38;5;244;48;5;234mâ–„[38;5;255;48;5;242mâ–„[38;5;231;48;5;255mâ–„[48;5;231mâ–„â–„â–„â–„â–„â–„[38;5;250;48;5;250mâ–„[38;5;16;48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[38;5;239;48;5;239mâ–„[38;5;231;48;5;231mâ–„â–„[38;5;255mâ–„[38;5;247mâ–„[38;5;244;48;5;254mâ–„[48;5;145mâ–„[38;5;239;48;5;244mâ–„[38;5;243;48;5;239mâ–„[38;5;231;48;5;242mâ–„[48;5;254mâ–„[38;5;254;48;5;138mâ–„[38;5;101;48;5;95mâ–„[38;5;138;48;5;180mâ–„[38;5;180;48;5;181mâ–„[38;5;181mâ–„â–„[38;5;180mâ–„[38;5;144mâ–„[38;5;180mâ–„[38;5;181mâ–„â–„[38;5;180mâ–„â–„â–„[38;5;144;48;5;180mâ–„[38;5;187;48;5;181mâ–„[48;5;187mâ–„[38;5;252mâ–„[38;5;187mâ–„[38;5;181;48;5;138mâ–„[38;5;138mâ–„[38;5;94;48;5;95mâ–„[38;5;95;48;5;94mâ–„[38;5;94;48;5;58mâ–„[38;5;95;48;5;234mâ–„[38;5;235;48;5;233mâ–„[38;5;233mâ–„[38;5;234mâ–„â–„[38;5;233;48;5;235mâ–„[38;5;234;48;5;244mâ–„[38;5;236;48;5;249mâ–„[38;5;242;48;5;253mâ–„[38;5;254;48;5;251mâ–„[38;5;231mâ–„[48;5;188mâ–„[48;5;255mâ–„[48;5;231mâ–„â–„â–„â–„â–„â–„â–„â–„â–„[38;5;250;48;5;250mâ–„[38;5;16;48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[38;5;239;48;5;239mâ–„[38;5;231;48;5;231mâ–„[38;5;101;48;5;188mâ–„[38;5;238;48;5;237mâ–„[38;5;233;48;5;234mâ–„[38;5;234;48;5;239mâ–„[38;5;243mâ–„[38;5;231;48;5;242mâ–„[48;5;255mâ–„[48;5;231mâ–„â–„[48;5;255mâ–„[38;5;255;48;5;138mâ–„[38;5;102;48;5;95mâ–„[38;5;95;48;5;138mâ–„â–„[38;5;131;48;5;180mâ–„[48;5;138mâ–„[38;5;137mâ–„[38;5;138;48;5;144mâ–„[38;5;137;48;5;180mâ–„â–„[48;5;144mâ–„[38;5;138;48;5;138mâ–„[38;5;181;48;5;144mâ–„[38;5;187;48;5;181mâ–„[48;5;187mâ–„[38;5;188;48;5;188mâ–„â–„[38;5;187;48;5;187mâ–„[38;5;95;48;5;181mâ–„[38;5;94;48;5;101mâ–„[38;5;240;48;5;94mâ–„[38;5;144mâ–„[48;5;137mâ–„[38;5;138;48;5;138mâ–„[38;5;237;48;5;8mâ–„[38;5;233;48;5;234mâ–„[48;5;233mâ–„[38;5;232mâ–„[38;5;233mâ–„[38;5;232mâ–„[38;5;233mâ–„[48;5;235mâ–„[38;5;240;48;5;247mâ–„[38;5;255;48;5;231mâ–„[38;5;231mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[38;5;250;48;5;250mâ–„[38;5;16;48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[38;5;239;48;5;239mâ–„[38;5;231;48;5;231mâ–„[38;5;254;48;5;101mâ–„[38;5;138;48;5;95mâ–„[38;5;145;48;5;235mâ–„[38;5;231;48;5;246mâ–„[48;5;231mâ–„â–„â–„â–„â–„â–„â–„[48;5;255mâ–„[38;5;255;48;5;252mâ–„[38;5;231;48;5;144mâ–„[38;5;181;48;5;95mâ–„[38;5;237mâ–„â–„[38;5;8mâ–„[38;5;95mâ–„[38;5;137mâ–„[38;5;144;48;5;137mâ–„[38;5;181;48;5;180mâ–„[38;5;187;48;5;187mâ–„[38;5;188;48;5;252mâ–„[48;5;188mâ–„[38;5;252mâ–„[38;5;138;48;5;252mâ–„[38;5;240;48;5;138mâ–„[38;5;94;48;5;95mâ–„[38;5;95mâ–„[38;5;144;48;5;137mâ–„[48;5;180mâ–„[38;5;138;48;5;144mâ–„[38;5;95;48;5;95mâ–„[48;5;237mâ–„[38;5;237;48;5;233mâ–„[38;5;233mâ–„[38;5;232;48;5;232mâ–„[48;5;233mâ–„[48;5;232mâ–„â–„â–„[38;5;235;48;5;235mâ–„[38;5;252;48;5;253mâ–„[38;5;231;48;5;231mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[38;5;250;48;5;250mâ–„[38;5;16;48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[38;5;239;48;5;239mâ–„[38;5;231;48;5;231mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[38;5;253;48;5;252mâ–„[38;5;238;48;5;237mâ–„[38;5;8mâ–„[38;5;95;48;5;239mâ–„[38;5;131;48;5;95mâ–„[38;5;137;48;5;137mâ–„[38;5;144;48;5;180mâ–„[38;5;181;48;5;187mâ–„â–„[48;5;252mâ–„â–„[38;5;94;48;5;138mâ–„[38;5;240;48;5;94mâ–„[38;5;94mâ–„[38;5;180;48;5;95mâ–„[38;5;181;48;5;144mâ–„â–„[38;5;180;48;5;180mâ–„â–„[38;5;144;48;5;137mâ–„[38;5;138mâ–„[38;5;137;48;5;95mâ–„[38;5;95;48;5;236mâ–„[38;5;235;48;5;232mâ–„[38;5;232mâ–„â–„[38;5;233mâ–„[38;5;240;48;5;234mâ–„[38;5;250;48;5;239mâ–„[38;5;255;48;5;254mâ–„[38;5;231;48;5;231mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[38;5;250;48;5;250mâ–„[38;5;16;48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[38;5;239;48;5;239mâ–„[38;5;231;48;5;231mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[38;5;246;48;5;253mâ–„[38;5;239;48;5;239mâ–„[48;5;238mâ–„[38;5;95;48;5;95mâ–„[38;5;137;48;5;137mâ–„[38;5;138mâ–„[38;5;180;48;5;144mâ–„[38;5;144mâ–„[48;5;181mâ–„[38;5;95;48;5;144mâ–„[38;5;94;48;5;95mâ–„[48;5;94mâ–„[38;5;187;48;5;95mâ–„[48;5;144mâ–„[48;5;187mâ–„â–„[38;5;181;48;5;181mâ–„[48;5;180mâ–„[38;5;180;48;5;144mâ–„â–„â–„[38;5;144;48;5;138mâ–„[38;5;138;48;5;137mâ–„[38;5;95;48;5;239mâ–„[48;5;237mâ–„[38;5;237;48;5;233mâ–„[38;5;233;48;5;235mâ–„[48;5;243mâ–„[48;5;239mâ–„[38;5;234mâ–„[38;5;235;48;5;249mâ–„[38;5;249;48;5;255mâ–„[38;5;231;48;5;231mâ–„â–„â–„â–„â–„â–„â–„â–„â–„[38;5;250;48;5;250mâ–„[38;5;16;48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[38;5;239;48;5;239mâ–„[38;5;231;48;5;231mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[38;5;255;48;5;145mâ–„[38;5;248;48;5;95mâ–„[38;5;58mâ–„[38;5;240;48;5;137mâ–„[38;5;95mâ–„[38;5;101;48;5;138mâ–„[38;5;138mâ–„[48;5;144mâ–„[38;5;95mâ–„[38;5;94;48;5;94mâ–„[38;5;95;48;5;95mâ–„[38;5;187;48;5;101mâ–„[38;5;252;48;5;187mâ–„[48;5;252mâ–„[38;5;187;48;5;187mâ–„â–„[38;5;181;48;5;181mâ–„â–„[48;5;180mâ–„[38;5;144;48;5;144mâ–„[48;5;180mâ–„[48;5;144mâ–„â–„[48;5;137mâ–„[38;5;137;48;5;95mâ–„â–„[38;5;95;48;5;237mâ–„[38;5;239;48;5;234mâ–„[38;5;235;48;5;233mâ–„[38;5;233mâ–„[38;5;235;48;5;234mâ–„[38;5;240;48;5;242mâ–„[38;5;231;48;5;255mâ–„[48;5;231mâ–„â–„â–„â–„â–„â–„â–„â–„[38;5;250;48;5;250mâ–„[38;5;16;48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[38;5;239;48;5;239mâ–„[38;5;231;48;5;231mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[38;5;250;48;5;181mâ–„[38;5;94;48;5;58mâ–„[38;5;58;48;5;237mâ–„[38;5;95;48;5;95mâ–„[48;5;137mâ–„[48;5;138mâ–„[38;5;94;48;5;94mâ–„â–„[38;5;138;48;5;95mâ–„[38;5;251;48;5;187mâ–„[38;5;187mâ–„â–„[48;5;252mâ–„[48;5;187mâ–„â–„[38;5;181;48;5;181mâ–„â–„â–„[38;5;144;48;5;144mâ–„â–„â–„â–„â–„[38;5;180;48;5;137mâ–„[38;5;95mâ–„[38;5;137mâ–„[38;5;101;48;5;95mâ–„[38;5;236;48;5;236mâ–„[38;5;235;48;5;234mâ–„â–„[38;5;239;48;5;59mâ–„[38;5;254;48;5;231mâ–„[38;5;231mâ–„â–„â–„â–„â–„â–„â–„â–„[38;5;250;48;5;250mâ–„[38;5;16;48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[38;5;239;48;5;239mâ–„[38;5;231;48;5;231mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[38;5;253;48;5;252mâ–„[38;5;94;48;5;94mâ–„[38;5;58;48;5;58mâ–„[38;5;94mâ–„[38;5;58;48;5;94mâ–„[38;5;94mâ–„[38;5;144;48;5;240mâ–„[38;5;181;48;5;137mâ–„[48;5;181mâ–„[38;5;187mâ–„[48;5;187mâ–„â–„â–„â–„â–„[48;5;181mâ–„[38;5;181mâ–„â–„[38;5;180;48;5;144mâ–„[38;5;144mâ–„â–„â–„â–„â–„[38;5;180mâ–„[48;5;137mâ–„[38;5;144mâ–„[38;5;137;48;5;238mâ–„[38;5;239;48;5;237mâ–„[38;5;95;48;5;240mâ–„â–„[48;5;248mâ–„[38;5;255;48;5;231mâ–„[38;5;231mâ–„â–„â–„â–„â–„â–„â–„[38;5;250;48;5;250mâ–„[38;5;16;48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[38;5;239;48;5;239mâ–„[38;5;231;48;5;231mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[38;5;255mâ–„[38;5;181mâ–„[38;5;95;48;5;254mâ–„[48;5;145mâ–„[48;5;95mâ–„[38;5;94;48;5;94mâ–„[38;5;95;48;5;95mâ–„[38;5;101;48;5;94mâ–„[38;5;95mâ–„[38;5;181;48;5;144mâ–„[38;5;7;48;5;181mâ–„[38;5;251mâ–„[48;5;187mâ–„[38;5;187mâ–„â–„â–„â–„â–„â–„â–„[48;5;181mâ–„[38;5;181mâ–„â–„[38;5;180;48;5;144mâ–„[38;5;144mâ–„â–„â–„[38;5;180;48;5;180mâ–„â–„[38;5;144;48;5;144mâ–„â–„[48;5;138mâ–„[38;5;138;48;5;95mâ–„[38;5;95;48;5;58mâ–„[48;5;137mâ–„[48;5;95mâ–„[38;5;255;48;5;255mâ–„[38;5;231;48;5;231mâ–„â–„â–„â–„â–„â–„â–„[38;5;250;48;5;250mâ–„[38;5;16;48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[38;5;239;48;5;239mâ–„[38;5;231;48;5;231mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[38;5;252mâ–„[38;5;101;48;5;254mâ–„[38;5;95;48;5;138mâ–„[48;5;95mâ–„[38;5;137mâ–„[38;5;101;48;5;137mâ–„[38;5;136;48;5;138mâ–„[48;5;240mâ–„[38;5;214;48;5;172mâ–„[38;5;95;48;5;58mâ–„[38;5;145;48;5;138mâ–„[38;5;187;48;5;7mâ–„[48;5;251mâ–„[48;5;187mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[38;5;181;48;5;181mâ–„â–„â–„[38;5;144;48;5;144mâ–„â–„[38;5;138;48;5;138mâ–„[38;5;144;48;5;144mâ–„[48;5;180mâ–„â–„[38;5;180mâ–„[48;5;144mâ–„[38;5;144;48;5;138mâ–„[38;5;138;48;5;137mâ–„[38;5;137mâ–„[48;5;95mâ–„[38;5;138;48;5;187mâ–„[38;5;244;48;5;252mâ–„[38;5;138mâ–„[38;5;251;48;5;255mâ–„[38;5;255;48;5;231mâ–„[38;5;231mâ–„â–„â–„[38;5;250;48;5;250mâ–„[38;5;16;48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„[48;5;234mâ–„[48;5;249mâ–„[48;5;251mâ–„â–„â–„â–„â–„â–„â–„â–„[48;5;246mâ–„[48;5;239mâ–„[48;5;238mâ–„[48;5;240mâ–„[48;5;95mâ–„[38;5;232;48;5;101mâ–„[38;5;178;48;5;136mâ–„[38;5;214;48;5;214mâ–„[38;5;235;48;5;178mâ–„[38;5;233mâ–„[38;5;136;48;5;214mâ–„[38;5;172;48;5;136mâ–„[38;5;232;48;5;247mâ–„[38;5;16mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[48;5;138mâ–„â–„â–„â–„[48;5;101mâ–„â–„â–„â–„[48;5;102mâ–„[48;5;138mâ–„[48;5;101mâ–„â–„â–„â–„â–„[48;5;95mâ–„[48;5;240mâ–„[48;5;95mâ–„â–„[48;5;102mâ–„[48;5;249mâ–„[48;5;251mâ–„â–„[48;5;59mâ–„[48;5;16mâ–„[0m -[38;5;16;48;5;16mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[38;5;234;48;5;172mâ–„[38;5;172;48;5;214mâ–„[38;5;214;48;5;172mâ–„[48;5;94mâ–„[38;5;172;48;5;233mâ–„[38;5;234;48;5;16mâ–„[38;5;16mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[0m -[38;5;16;48;5;16mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[38;5;136;48;5;58mâ–„[38;5;214mâ–„[38;5;94;48;5;232mâ–„[38;5;233;48;5;58mâ–„[38;5;130;48;5;172mâ–„[38;5;214;48;5;214mâ–„[38;5;136;48;5;130mâ–„[38;5;16;48;5;16mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[0m -[38;5;232;48;5;16mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[48;5;234mâ–„[38;5;233;48;5;172mâ–„[38;5;136;48;5;214mâ–„[38;5;130mâ–„[38;5;94mâ–„[38;5;235mâ–„[38;5;232;48;5;235mâ–„[48;5;16mâ–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„â–„[38;5;235mâ–„[38;5;250mâ–„[38;5;254;48;5;235mâ–„[48;5;236mâ–„â–„â–„[38;5;253;48;5;233mâ–„[0m -[?25h
\ No newline at end of file +[0m [0m[38;2;57;39;35mâ–„[38;2;41;27;27m[48;2;68;47;43mâ–„[38;2;42;30;30m[48;2;51;33;30mâ–„[38;2;25;16;17m[48;2;37;23;21mâ–„[38;2;21;12;13m[48;2;32;17;16mâ–„[38;2;18;8;8m[48;2;27;14;13mâ–„[38;2;19;7;7m[48;2;39;24;23mâ–„[38;2;31;15;13m[48;2;36;22;19mâ–„[38;2;54;35;30m[48;2;31;16;13mâ–„[38;2;33;19;17m[48;2;51;32;28mâ–„[38;2;13;4;4m[48;2;50;31;28mâ–„[38;2;13;5;6m[48;2;35;20;19mâ–„[38;2;13;6;7m[48;2;26;14;13mâ–„[38;2;16;8;9m[48;2;23;12;12mâ–„[38;2;19;11;12m[48;2;31;19;18mâ–„[38;2;13;6;8m[48;2;38;24;23mâ–„[38;2;14;7;9m[48;2;42;28;26mâ–„[38;2;20;12;14m[48;2;49;34;31mâ–„[38;2;27;17;18m[48;2;58;40;37mâ–„[0m[38;2;34;23;23mâ–„[0m[38;2;41;27;26mâ–„[0m[38;2;50;33;28mâ–„[0m[38;2;71;51;43mâ–„[0m [0m +[0m [0m[38;2;61;42;36mâ–„[0m[38;2;29;16;14mâ–„[38;2;13;4;5m[48;2;47;30;26mâ–„[38;2;21;12;13m[48;2;38;22;20mâ–„[38;2;29;20;21m[48;2;31;17;16mâ–„[38;2;24;15;15m[48;2;32;20;20mâ–„[38;2;27;10;8m[48;2;26;17;18mâ–„[38;2;79;50;38m[48;2;21;12;14mâ–„[38;2;142;102;79m[48;2;31;17;15mâ–„[38;2;164;122;96m[48;2;50;27;21mâ–„[38;2;171;130;102m[48;2;58;33;25mâ–„[38;2;193;158;129m[48;2;81;50;36mâ–„[38;2;208;177;149m[48;2;128;91;70mâ–„[38;2;109;73;57m[48;2;90;59;46mâ–„[38;2;31;11;8m[48;2;19;6;5mâ–„[38;2;25;11;10m[48;2;15;6;6mâ–„[38;2;16;7;7m[48;2;16;7;8mâ–„[38;2;13;6;7m[48;2;12;6;7mâ–„[38;2;13;7;8m[48;2;12;5;7mâ–„[38;2;17;9;11m[48;2;15;8;9mâ–„[38;2;27;18;19m[48;2;18;11;13mâ–„[38;2;39;29;31m[48;2;27;19;21mâ–„[38;2;39;29;30m[48;2;36;27;29mâ–„[38;2;34;25;26m[48;2;32;24;26mâ–„[38;2;24;16;18m[48;2;20;12;15mâ–„[38;2;13;7;9m[48;2;12;6;9mâ–„[38;2;10;4;7m[48;2;15;7;8mâ–„[38;2;11;5;6m[48;2;31;17;15mâ–„[38;2;13;5;6m[48;2;51;33;29mâ–„[38;2;23;13;14m[48;2;64;46;40mâ–„[0m[38;2;26;15;15mâ–„[0m[38;2;39;25;24mâ–„[0m[38;2;48;33;29mâ–„[0m[38;2;61;43;37mâ–„[0m [0m +[0m [0m[38;2;45;28;25mâ–„[38;2;14;5;5m[48;2;26;13;11mâ–„[38;2;22;14;15m[48;2;5;0;0mâ–„[38;2;33;22;23m[48;2;16;9;10mâ–„[38;2;10;2;3m[48;2;30;20;21mâ–„[38;2;35;14;8m[48;2;16;6;7mâ–„[38;2;141;104;82m[48;2;36;16;11mâ–„[38;2;195;163;135m[48;2;130;94;74mâ–„[38;2;202;176;149m[48;2;187;152;125mâ–„[38;2;215;192;166m[48;2;197;164;136mâ–„[38;2;222;201;174m[48;2;212;184;157mâ–„[38;2;228;207;182m[48;2;217;191;164mâ–„[38;2;229;210;185m[48;2;227;207;182mâ–„[38;2;229;209;184m[48;2;226;203;178mâ–„[38;2;213;184;157m[48;2;152;116;94mâ–„[38;2;139;97;77m[48;2;45;16;10mâ–„[38;2;72;38;29m[48;2;31;14;12mâ–„[38;2;42;20;18m[48;2;20;10;10mâ–„[38;2;30;16;16m[48;2;16;8;8mâ–„[38;2;20;10;10m[48;2;19;11;12mâ–„[38;2;19;10;11m[48;2;19;10;12mâ–„[38;2;21;12;12m[48;2;18;10;11mâ–„[38;2;28;18;18m[48;2;20;12;13mâ–„[38;2;40;28;28m[48;2;20;12;13mâ–„[38;2;41;30;31m[48;2;25;17;18mâ–„[38;2;24;15;17m[48;2;17;10;12mâ–„[38;2;24;15;17m[48;2;13;7;9mâ–„[38;2;20;13;15m[48;2;14;7;9mâ–„[38;2;13;6;9m[48;2;15;8;11mâ–„[38;2;16;9;11m[48;2;14;7;10mâ–„[38;2;15;8;11m[48;2;18;11;14mâ–„[38;2;16;9;12m[48;2;13;7;11mâ–„[38;2;25;16;19m[48;2;16;8;11mâ–„[38;2;21;14;16m[48;2;22;13;15mâ–„[38;2;29;20;23m[48;2;35;23;23mâ–„[38;2;24;16;19m[48;2;38;25;23mâ–„[38;2;28;17;17m[48;2;65;46;40mâ–„[0m[38;2;64;45;38mâ–„[0m [0m +[0m [0m[38;2;37;22;20mâ–„[38;2;18;9;11m[48;2;34;20;18mâ–„[38;2;29;19;21m[48;2;24;16;18mâ–„[38;2;12;4;5m[48;2;31;21;23mâ–„[38;2;14;1;0m[48;2;15;7;7mâ–„[38;2;85;51;38m[48;2;24;6;3mâ–„[38;2;168;130;106m[48;2;120;84;65mâ–„[38;2;192;160;136m[48;2;189;154;126mâ–„[38;2;201;173;150m[48;2;198;169;143mâ–„[38;2;211;186;165m[48;2;210;185;160mâ–„[38;2;220;199;178m[48;2;218;196;172mâ–„[38;2;226;207;186m[48;2;224;204;181mâ–„[38;2;229;209;188m[48;2;228;208;184mâ–„[38;2;231;212;190m[48;2;231;212;188mâ–„[38;2;232;213;191m[48;2;231;213;189mâ–„[38;2;232;214;191m[48;2;230;211;187mâ–„[38;2;232;215;192m[48;2;223;197;171mâ–„[38;2;234;215;191m[48;2;190;154;129mâ–„[38;2;226;201;175m[48;2;133;96;78mâ–„[38;2;193;158;132m[48;2;90;58;48mâ–„[38;2;146;105;85m[48;2;61;38;33mâ–„[38;2;90;59;50m[48;2;28;14;13mâ–„[38;2;30;15;13m[48;2;26;14;13mâ–„[38;2;29;16;14m[48;2;35;23;21mâ–„[38;2;23;13;13m[48;2;44;32;30mâ–„[38;2;21;12;13m[48;2;39;27;27mâ–„[38;2;16;8;11m[48;2;20;12;13mâ–„[38;2;10;4;6m[48;2;17;9;11mâ–„[38;2;13;6;8m[48;2;17;10;12mâ–„[38;2;12;5;7m[48;2;13;7;9mâ–„[38;2;12;6;7m[48;2;12;6;8mâ–„[38;2;19;11;12m[48;2;14;7;10mâ–„[38;2;35;25;26m[48;2;22;14;16mâ–„[38;2;29;19;21m[48;2;24;16;18mâ–„[38;2;18;10;12m[48;2;20;12;15mâ–„[38;2;22;14;16m[48;2;16;9;12mâ–„[38;2;22;14;15m[48;2;15;9;12mâ–„[38;2;21;12;13m[48;2;15;8;9mâ–„[38;2;21;11;11m[48;2;46;30;28mâ–„[38;2;57;39;36m[48;2;66;47;40mâ–„[0m [0m[38;2;81;56;46mâ–„[0m[38;2;74;51;42mâ–„[0m [0m +[0m [38;2;44;29;26m[48;2;51;31;28mâ–„[38;2;10;2;3m[48;2;18;8;8mâ–„[38;2;15;8;9m[48;2;25;16;18mâ–„[38;2;17;9;10m[48;2;16;8;9mâ–„[38;2;17;6;6m[48;2;16;6;5mâ–„[38;2;54;25;16m[48;2;40;17;11mâ–„[38;2;147;107;84m[48;2;122;83;63mâ–„[38;2;184;148;124m[48;2;178;141;117mâ–„[38;2;193;161;140m[48;2;193;161;139mâ–„[38;2;202;172;153m[48;2;203;174;154mâ–„[38;2;208;181;162m[48;2;210;185;165mâ–„[38;2;216;192;174m[48;2;219;197;178mâ–„[38;2;220;198;179m[48;2;224;204;185mâ–„[38;2;222;201;181m[48;2;227;208;188mâ–„[38;2;224;203;183m[48;2;229;210;189mâ–„[38;2;225;204;181m[48;2;229;210;188mâ–„[38;2;226;204;180m[48;2;230;212;189mâ–„[38;2;229;209;185m[48;2;232;214;190mâ–„[38;2;231;213;188m[48;2;231;213;189mâ–„[38;2;232;214;189m[48;2;233;215;191mâ–„[38;2;232;214;190m[48;2;233;214;189mâ–„[38;2;227;206;183m[48;2;202;170;142mâ–„[38;2;181;142;116m[48;2;143;103;83mâ–„[38;2;139;97;76m[48;2;65;37;31mâ–„[38;2;76;45;35m[48;2;32;16;14mâ–„[38;2;35;18;16m[48;2;29;18;17mâ–„[38;2;26;15;15m[48;2;23;14;15mâ–„[38;2;25;15;16m[48;2;16;9;11mâ–„[38;2;18;9;11m[48;2;17;9;11mâ–„[38;2;11;5;6m[48;2;15;8;10mâ–„[38;2;11;5;6m[48;2;13;7;8mâ–„[38;2;11;4;5m[48;2;18;10;11mâ–„[38;2;13;6;7m[48;2;19;10;11mâ–„[38;2;13;5;6m[48;2;22;13;14mâ–„[38;2;22;12;12m[48;2;23;14;15mâ–„[38;2;24;14;15m[48;2;17;9;11mâ–„[38;2;18;10;11m[48;2;18;11;12mâ–„[38;2;12;6;7m[48;2;19;11;12mâ–„[38;2;10;4;5m[48;2;22;13;14mâ–„[38;2;12;6;7m[48;2;10;3;4mâ–„[38;2;17;9;9m[48;2;31;19;17mâ–„[38;2;48;31;28m[48;2;76;54;47mâ–„[38;2;30;18;16m[48;2;63;43;35mâ–„[38;2;16;6;5m[48;2;48;29;25mâ–„[38;2;7;1;1m[48;2;39;22;19mâ–„[38;2;22;12;11m[48;2;42;22;19mâ–„[38;2;32;18;17m[48;2;58;34;29mâ–„[38;2;39;23;20m[48;2;69;46;39mâ–„[0m[38;2;66;44;38mâ–„[0m[38;2;85;61;52mâ–„[0m [0m +[0m [0m[38;2;53;37;32mâ–€[38;2;34;19;18m[48;2;18;8;8mâ–„[38;2;19;9;10m[48;2;17;10;11mâ–„[38;2;17;8;8m[48;2;11;5;6mâ–„[38;2;27;11;7m[48;2;14;3;2mâ–„[38;2;76;44;32m[48;2;102;67;51mâ–„[38;2;80;48;36m[48;2;168;127;103mâ–„[38;2;88;55;42m[48;2;184;145;122mâ–„[38;2;109;73;57m[48;2;195;158;137mâ–„[38;2;158;120;101m[48;2;198;165;146mâ–„[38;2;191;159;142m[48;2;202;173;155mâ–„[38;2;202;174;158m[48;2;210;184;166mâ–„[38;2;209;184;167m[48;2;217;193;175mâ–„[38;2;211;187;168m[48;2;219;196;177mâ–„[38;2;211;186;167m[48;2;221;198;178mâ–„[38;2;209;184;163m[48;2;221;198;177mâ–„[38;2;207;180;158m[48;2;223;199;175mâ–„[38;2;207;180;157m[48;2;226;204;180mâ–„[38;2;209;182;159m[48;2;229;209;184mâ–„[38;2;213;188;166m[48;2;231;213;188mâ–„[38;2;216;192;170m[48;2;231;212;189mâ–„[38;2;220;198;176m[48;2;230;210;187mâ–„[38;2;223;201;179m[48;2;214;185;159mâ–„[38;2;212;184;158m[48;2;190;146;114mâ–„[38;2;181;141;113m[48;2;161;113;86mâ–„[38;2;140;96;76m[48;2;83;48;37mâ–„[38;2;133;89;74m[48;2;48;26;22mâ–„[38;2;87;55;47m[48;2;27;13;13mâ–„[38;2;11;2;3m[48;2;13;6;7mâ–„[38;2;15;7;8m[48;2;18;10;11mâ–„[38;2;12;5;6m[48;2;6;1;3mâ–„[38;2;9;4;5m[48;2;10;4;5mâ–„[38;2;16;8;9m[48;2;16;8;9mâ–„[38;2;22;13;14m[48;2;25;15;15mâ–„[38;2;24;14;15m[48;2;31;20;20mâ–„[38;2;24;15;15m[48;2;28;18;18mâ–„[38;2;19;11;12m[48;2;24;15;15mâ–„[38;2;17;9;11m[48;2;17;9;11mâ–„[38;2;18;11;12m[48;2;10;4;5mâ–„[38;2;12;6;7m[48;2;14;7;8mâ–„[38;2;13;7;8m[48;2;13;6;7mâ–„[38;2;19;12;12m[48;2;22;13;13mâ–„[38;2;24;14;14m[48;2;26;16;16mâ–„[38;2;37;26;26m[48;2;28;18;18mâ–„[38;2;37;28;28m[48;2;14;7;7mâ–„[38;2;19;11;11m[48;2;8;3;3mâ–„[38;2;24;13;12m[48;2;28;16;14mâ–„[38;2;16;7;6m[48;2;33;19;17mâ–„[38;2;18;9;9m[48;2;50;30;28mâ–„[38;2;28;15;15m[48;2;57;34;30mâ–„[38;2;31;17;16m[48;2;55;34;28mâ–„[38;2;61;42;37m[48;2;89;66;55mâ–„[0m[38;2;112;85;72mâ–„[0m [0m +[0m [0m[38;2;21;16;14mâ–„[38;2;9;1;0m[48;2;58;39;34mâ–„[38;2;12;5;4m[48;2;23;10;9mâ–„[38;2;0;0;0m[48;2;17;7;6mâ–„[38;2;27;14;10m[48;2;35;15;10mâ–„[38;2;73;50;39m[48;2;95;58;42mâ–„[38;2;84;62;49m[48;2;123;83;63mâ–„[38;2;94;72;58m[48;2;128;88;68mâ–„[38;2;99;77;61m[48;2;103;65;46mâ–„[38;2;74;51;37m[48;2;99;56;38mâ–„[38;2;66;42;29m[48;2;167;125;102mâ–„[38;2;97;80;68m[48;2;212;179;158mâ–„[38;2;94;82;72m[48;2;225;195;173mâ–„[38;2;103;90;79m[48;2;223;195;173mâ–„[38;2;101;85;73m[48;2;216;185;164mâ–„[38;2;83;64;52m[48;2;196;158;135mâ–„[38;2;94;74;62m[48;2;168;124;101mâ–„[38;2;77;57;43m[48;2;154;108;85mâ–„[38;2;99;80;66m[48;2;145;99;76mâ–„[38;2;104;88;74m[48;2;156;112;88mâ–„[38;2;103;86;73m[48;2;166;123;98mâ–„[38;2;95;76;62m[48;2;181;140;113mâ–„[38;2;85;63;48m[48;2;194;156;129mâ–„[38;2;88;64;50m[48;2;209;172;144mâ–„[38;2;89;65;51m[48;2;189;146;116mâ–„[38;2;82;51;38m[48;2;157;109;85mâ–„[38;2;89;50;40m[48;2;123;80;63mâ–„[38;2;78;46;40m[48;2;67;37;31mâ–„[38;2;58;33;30m[48;2;38;20;19mâ–„[38;2;27;13;14m[48;2;29;16;17mâ–„[38;2;22;12;14m[48;2;14;6;7mâ–„[38;2;12;5;7m[48;2;8;3;4mâ–„[38;2;10;4;5m[48;2;13;6;7mâ–„[38;2;11;4;5m[48;2;13;6;6mâ–„[38;2;19;10;11m[48;2;20;10;11mâ–„[38;2;18;10;10m[48;2;23;13;14mâ–„[38;2;24;15;16m[48;2;22;13;14mâ–„[38;2;25;16;17m[48;2;22;13;15mâ–„[38;2;19;11;12m[48;2;23;14;16mâ–„[38;2;25;16;17m[48;2;20;13;14mâ–„[38;2;19;12;12m[48;2;15;8;9mâ–„[38;2;19;12;13m[48;2;17;10;11mâ–„[38;2;12;5;6m[48;2;21;13;13mâ–„[38;2;13;6;6m[48;2;18;8;9mâ–„[38;2;28;17;17m[48;2;36;27;27mâ–„[38;2;54;45;45m[48;2;36;29;29mâ–„[38;2;8;2;2m[48;2;7;3;3mâ–„[38;2;9;2;1m[48;2;18;10;10mâ–„[38;2;20;11;11m[48;2;14;7;7mâ–„[38;2;47;33;32m[48;2;19;10;10mâ–„[38;2;34;21;21m[48;2;23;13;13mâ–„[38;2;44;29;26m[48;2;40;25;23mâ–„[0m[38;2;80;58;49mâ–€[0m [0m +[0m [0m[38;2;1;1;0mâ–€[38;2;7;8;8m[48;2;12;12;12mâ–„[38;2;86;85;85m[48;2;119;120;120mâ–„[38;2;159;158;158m[48;2;9;10;10mâ–„[38;2;99;99;99m[48;2;114;114;114mâ–„[38;2;155;154;153m[48;2;6;8;9mâ–„[38;2;37;36;35m[48;2;0;0;0mâ–„[38;2;4;3;2m[48;2;0;0;0mâ–„[38;2;5;4;4m[48;2;0;0;0mâ–„[38;2;4;3;3m[48;2;0;0;0mâ–„[38;2;5;4;3m[48;2;0;0;0mâ–„[38;2;0;0;0m[48;2;0;0;0mâ–„[38;2;107;89;73m[48;2;35;26;19mâ–„[38;2;255;239;209m[48;2;114;97;81mâ–„[38;2;138;121;106m[48;2;43;37;31mâ–„[38;2;24;25;25m[48;2;27;30;32mâ–„[38;2;122;121;120m[48;2;90;92;93mâ–„[38;2;153;152;151m[48;2;9;12;14mâ–„[38;2;104;103;102m[48;2;105;107;109mâ–„[38;2;153;152;151m[48;2;0;0;0mâ–„[38;2;10;10;9m[48;2;0;0;0mâ–„[38;2;4;4;3m[48;2;0;0;0mâ–„[38;2;5;4;4m[48;2;0;0;0mâ–„[38;2;3;2;2m[48;2;0;0;0mâ–„[38;2;0;0;0m[48;2;0;0;0mâ–„[38;2;47;32;21m[48;2;0;0;0mâ–„[38;2;120;81;60m[48;2;23;13;10mâ–„[38;2;106;63;49m[48;2;116;74;60mâ–„[38;2;69;37;30m[48;2;112;73;62mâ–„[38;2;51;24;20m[48;2;53;26;23mâ–„[38;2;56;28;24m[48;2;38;18;16mâ–„[38;2;35;18;17m[48;2;32;18;18mâ–„[38;2;9;3;4m[48;2;15;7;9mâ–„[38;2;13;6;7m[48;2;11;5;5mâ–„[38;2;16;8;8m[48;2;14;6;7mâ–„[38;2;14;6;6m[48;2;16;8;9mâ–„[38;2;15;8;8m[48;2;22;13;14mâ–„[38;2;13;6;6m[48;2;27;17;17mâ–„[38;2;20;11;11m[48;2;29;19;19mâ–„[38;2;25;16;16m[48;2;23;15;15mâ–„[38;2;22;13;13m[48;2;28;18;19mâ–„[38;2;15;8;8m[48;2;26;17;17mâ–„[38;2;17;9;9m[48;2;25;16;16mâ–„[38;2;16;8;8m[48;2;14;7;8mâ–„[38;2;16;8;9m[48;2;18;10;11mâ–„[38;2;13;6;6m[48;2;22;11;12mâ–„[38;2;37;28;28m[48;2;51;39;39mâ–„[38;2;52;42;42m[48;2;32;23;22mâ–„[38;2;25;18;18m[48;2;52;42;42mâ–„[38;2;10;4;4m[48;2;52;39;38mâ–„[38;2;9;2;2m[48;2;42;29;28mâ–„[38;2;16;7;6m[48;2;46;32;31mâ–„[38;2;47;31;28m[48;2;65;47;42mâ–„[0m[38;2;96;70;61mâ–„[0m [0m +[0m [0m[38;2;57;42;35mâ–€[38;2;81;60;49m[48;2;0;0;0mâ–„[38;2;2;0;0m[48;2;53;53;54mâ–„[38;2;34;32;30m[48;2;146;145;145mâ–„[38;2;5;1;0m[48;2;68;69;69mâ–„[38;2;40;36;34m[48;2;151;151;151mâ–„[38;2;28;25;23m[48;2;39;40;40mâ–„[38;2;23;19;17m[48;2;0;0;0mâ–„[38;2;25;21;19m[48;2;0;0;0mâ–„[38;2;89;54;38m[48;2;4;3;3mâ–„[38;2;179;134;105m[48;2;84;57;40mâ–„[38;2;238;215;191m[48;2;204;177;152mâ–„[38;2;224;201;180m[48;2;227;206;185mâ–„[38;2;226;201;178m[48;2;211;187;166mâ–„[38;2;233;210;186m[48;2;123;110;97mâ–„[38;2;151;137;122m[48;2;6;6;6mâ–„[38;2;24;23;20m[48;2;86;86;86mâ–„[38;2;51;48;46m[48;2;131;130;131mâ–„[38;2;17;14;12m[48;2;65;65;65mâ–„[38;2;51;49;47m[48;2;153;153;153mâ–„[38;2;31;28;26m[48;2;8;8;9mâ–„[38;2;25;23;21m[48;2;0;0;0mâ–„[38;2;117;105;93m[48;2;3;3;2mâ–„[38;2;226;200;174m[48;2;100;86;73mâ–„[38;2;196;155;124m[48;2;174;133;104mâ–„[38;2;164;118;91m[48;2;157;109;82mâ–„[38;2;139;93;73m[48;2;164;119;94mâ–„[38;2;127;84;69m[48;2;134;91;74mâ–„[38;2;89;53;46m[48;2;79;43;36mâ–„[38;2;44;21;17m[48;2;51;25;19mâ–„[38;2;22;8;6m[48;2;20;7;6mâ–„[38;2;11;3;3m[48;2;10;3;4mâ–„[38;2;12;5;5m[48;2;13;5;6mâ–„[38;2;13;5;6m[48;2;13;5;6mâ–„[38;2;16;8;9m[48;2;17;8;8mâ–„[38;2;19;10;11m[48;2;16;8;8mâ–„[38;2;20;11;11m[48;2;20;10;10mâ–„[38;2;18;9;10m[48;2;23;13;13mâ–„[38;2;16;8;9m[48;2;26;16;16mâ–„[38;2;11;5;5m[48;2;16;8;8mâ–„[38;2;13;5;5m[48;2;15;8;7mâ–„[38;2;7;2;2m[48;2;15;7;7mâ–„[38;2;11;5;4m[48;2;10;3;3mâ–„[38;2;17;9;8m[48;2;19;10;9mâ–„[38;2;16;8;8m[48;2;11;4;5mâ–„[38;2;10;3;3m[48;2;21;12;12mâ–„[38;2;45;37;36m[48;2;43;34;33mâ–„[38;2;25;16;15m[48;2;3;0;0mâ–„[38;2;30;18;18m[48;2;14;6;6mâ–„[38;2;35;21;21m[48;2;21;11;10mâ–„[38;2;35;22;21m[48;2;15;7;6mâ–„[38;2;19;11;11m[48;2;26;15;15mâ–„[38;2;31;17;16m[48;2;72;50;45mâ–„[38;2;82;61;52m[48;2;100;76;64mâ–„[0m [0m +[0m [38;2;123;92;74m[48;2;99;72;58mâ–„[0m[38;2;84;56;45mâ–€[38;2;112;73;59m[48;2;103;67;53mâ–„[38;2;161;120;97m[48;2;144;110;92mâ–„[38;2;189;156;132m[48;2;173;144;124mâ–„[38;2;200;169;146m[48;2;188;161;140mâ–„[38;2;167;121;97m[48;2;179;146;124mâ–„[38;2;178;134;107m[48;2;145;90;63mâ–„[38;2;231;208;185m[48;2;212;180;153mâ–„[38;2;225;202;180m[48;2;231;210;188mâ–„[38;2;226;203;181m[48;2;225;202;179mâ–„[38;2;229;207;184m[48;2;226;203;180mâ–„[38;2;229;207;183m[48;2;230;208;183mâ–„[38;2;230;209;185m[48;2;234;213;188mâ–„[38;2;235;215;192m[48;2;219;201;180mâ–„[38;2;236;215;193m[48;2;211;193;172mâ–„[38;2;235;213;191m[48;2;217;198;177mâ–„[38;2;236;214;192m[48;2;211;192;172mâ–„[38;2;236;215;192m[48;2;218;200;179mâ–„[38;2;237;216;193m[48;2;221;203;181mâ–„[38;2;232;210;187m[48;2;228;207;183mâ–„[38;2;227;201;176m[48;2;229;205;181mâ–„[38;2;216;183;155m[48;2;210;176;148mâ–„[38;2;160;110;81m[48;2;162;115;88mâ–„[38;2;152;104;82m[48;2;144;98;77mâ–„[38;2;91;53;42m[48;2;120;77;64mâ–„[38;2;86;48;36m[48;2;60;29;24mâ–„[38;2;101;60;46m[48;2;38;15;12mâ–„[38;2;50;21;17m[48;2;29;11;9mâ–„[38;2;32;13;12m[48;2;20;9;9mâ–„[38;2;21;9;8m[48;2;18;8;8mâ–„[38;2;19;8;8m[48;2;11;4;4mâ–„[38;2;11;4;3m[48;2;17;8;9mâ–„[38;2;17;8;8m[48;2;19;10;10mâ–„[38;2;24;14;13m[48;2;20;11;11mâ–„[38;2;32;20;19m[48;2;21;12;12mâ–„[38;2;18;8;8m[48;2;17;9;10mâ–„[38;2;16;7;7m[48;2;19;10;11mâ–„[38;2;17;7;6m[48;2;12;5;5mâ–„[38;2;13;5;5m[48;2;8;2;2mâ–„[38;2;9;3;2m[48;2;13;6;5mâ–„[38;2;16;8;7m[48;2;16;8;7mâ–„[38;2;17;8;9m[48;2;13;6;7mâ–„[38;2;8;2;2m[48;2;9;3;3mâ–„[38;2;38;28;28m[48;2;47;36;36mâ–„[38;2;50;39;39m[48;2;36;26;26mâ–„[38;2;18;8;8m[48;2;27;15;15mâ–„[38;2;29;18;17m[48;2;36;23;22mâ–„[38;2;28;16;15m[48;2;33;21;20mâ–„[38;2;15;7;7m[48;2;30;18;18mâ–„[38;2;55;39;35m[48;2;38;25;22mâ–„[0m[38;2;98;76;65mâ–€[0m [0m +[0m [0m[38;2;136;106;87mâ–€[0m[38;2;129;101;82mâ–€[38;2;110;74;60m[48;2;110;73;58mâ–„[38;2;149;104;82m[48;2;156;113;90mâ–„[38;2;186;144;116m[48;2;188;151;126mâ–„[38;2;173;131;105m[48;2;189;151;126mâ–„[38;2;159;111;87m[48;2;175;131;106mâ–„[38;2;223;187;161m[48;2;221;194;171mâ–„[38;2;209;172;149m[48;2;236;216;196mâ–„[38;2;175;132;111m[48;2;233;212;190mâ–„[38;2;178;134;110m[48;2;232;210;189mâ–„[38;2;203;162;134m[48;2;226;203;180mâ–„[38;2;223;194;168m[48;2;227;204;180mâ–„[38;2;222;193;166m[48;2;227;203;179mâ–„[38;2;222;192;165m[48;2;227;202;177mâ–„[38;2;223;193;167m[48;2;227;203;179mâ–„[38;2;226;197;172m[48;2;229;205;181mâ–„[38;2;227;198;173m[48;2;230;206;183mâ–„[38;2;226;197;172m[48;2;230;207;184mâ–„[38;2;225;195;171m[48;2;229;205;181mâ–„[38;2;224;193;167m[48;2;226;200;175mâ–„[38;2;220;189;163m[48;2;224;194;168mâ–„[38;2;220;190;165m[48;2;212;177;149mâ–„[38;2;187;146;119m[48;2;168;118;87mâ–„[38;2;151;101;75m[48;2;164;115;90mâ–„[38;2;150;99;74m[48;2;110;64;49mâ–„[38;2;148;92;66m[48;2;125;73;52mâ–„[38;2;124;63;44m[48;2;139;83;60mâ–„[38;2;146;85;67m[48;2;84;32;24mâ–„[38;2;126;63;48m[48;2;70;28;22mâ–„[38;2;76;34;27m[48;2;39;17;15mâ–„[38;2;19;8;7m[48;2;32;17;16mâ–„[38;2;15;7;6m[48;2;22;11;10mâ–„[38;2;16;7;7m[48;2;21;11;11mâ–„[38;2;15;6;6m[48;2;26;14;13mâ–„[38;2;15;7;7m[48;2;18;8;7mâ–„[38;2;12;5;5m[48;2;12;4;4mâ–„[38;2;17;8;8m[48;2;14;5;4mâ–„[38;2;22;12;12m[48;2;16;6;6mâ–„[38;2;13;5;5m[48;2;14;5;5mâ–„[38;2;14;7;6m[48;2;20;11;10mâ–„[38;2;6;2;2m[48;2;12;6;5mâ–„[38;2;7;3;3m[48;2;5;1;1mâ–„[38;2;12;5;4m[48;2;6;1;1mâ–„[38;2;24;13;12m[48;2;30;19;19mâ–„[38;2;33;21;20m[48;2;36;26;25mâ–„[38;2;8;2;2m[48;2;11;3;3mâ–„[38;2;15;7;7m[48;2;27;15;15mâ–„[38;2;21;11;11m[48;2;32;19;18mâ–„[38;2;13;4;5m[48;2;11;4;4mâ–„[38;2;57;40;36m[48;2;48;33;30mâ–„[0m [0m +[0m [38;2;119;80;64m[48;2;135;91;71mâ–„[38;2;153;106;82m[48;2;174;129;102mâ–„[38;2;179;137;110m[48;2;182;140;112mâ–„[38;2;139;97;75m[48;2;101;52;35mâ–„[38;2;93;56;40m[48;2;100;51;36mâ–„[38;2;164;130;107m[48;2;117;62;43mâ–„[38;2;216;189;164m[48;2;141;89;67mâ–„[38;2;238;220;199m[48;2;162;115;92mâ–„[38;2;228;207;186m[48;2;209;173;147mâ–„[38;2;224;201;178m[48;2;221;193;168mâ–„[38;2;219;190;164m[48;2;219;186;158mâ–„[38;2;217;183;154m[48;2;220;185;156mâ–„[38;2;219;185;157m[48;2;220;185;158mâ–„[38;2;220;188;161m[48;2;221;188;162mâ–„[38;2;221;189;163m[48;2;223;190;163mâ–„[38;2;221;189;165m[48;2;222;189;164mâ–„[38;2;221;190;167m[48;2;222;189;164mâ–„[38;2;222;193;171m[48;2;222;189;165mâ–„[38;2;220;193;173m[48;2;220;191;168mâ–„[38;2;218;191;171m[48;2;218;190;167mâ–„[38;2;221;196;175m[48;2;218;189;164mâ–„[38;2;191;151;122m[48;2;199;157;126mâ–„[38;2;166;118;87m[48;2;205;161;128mâ–„[38;2;169;121;96m[48;2;213;171;142mâ–„[38;2;117;68;51m[48;2;192;136;108mâ–„[38;2;41;16;12m[48;2;158;98;76mâ–„[38;2;16;5;5m[48;2;111;61;48mâ–„[38;2;9;3;4m[48;2;44;20;16mâ–„[38;2;10;3;3m[48;2;6;0;0mâ–„[38;2;15;7;6m[48;2;10;3;3mâ–„[38;2;12;5;5m[48;2;12;5;5mâ–„[38;2;5;1;2m[48;2;6;2;2mâ–„[38;2;7;2;3m[48;2;10;5;5mâ–„[38;2;8;2;3m[48;2;10;4;4mâ–„[38;2;5;1;1m[48;2;11;5;6mâ–„[38;2;3;0;0m[48;2;15;8;8mâ–„[38;2;2;0;0m[48;2;12;6;6mâ–„[38;2;10;4;4m[48;2;11;5;4mâ–„[38;2;6;2;2m[48;2;8;3;2mâ–„[38;2;10;4;4m[48;2;8;3;3mâ–„[38;2;9;3;3m[48;2;9;3;3mâ–„[38;2;8;1;1m[48;2;21;12;11mâ–„[38;2;38;21;18m[48;2;36;23;21mâ–„[38;2;57;38;34m[48;2;11;1;1mâ–„[38;2;62;42;38m[48;2;18;7;7mâ–„[38;2;97;74;66m[48;2;48;31;29mâ–„[0m[38;2;56;39;34mâ–€[0m[38;2;94;71;64mâ–€[0m [0m +[0m [0m[38;2;118;81;67mâ–€[38;2;121;77;62m[48;2;143;95;75mâ–„[38;2;147;100;77m[48;2;165;123;99mâ–„[38;2;143;93;73m[48;2;153;110;88mâ–„[38;2;110;56;49m[48;2;159;103;80mâ–„[38;2;126;92;88m[48;2;191;132;106mâ–„[38;2;138;79;64m[48;2;196;149;126mâ–„[38;2;159;77;53m[48;2;207;173;153mâ–„[38;2;162;96;70m[48;2;218;192;170mâ–„[38;2;174;123;97m[48;2;215;186;163mâ–„[38;2;209;177;150m[48;2;213;182;157mâ–„[38;2;218;192;167m[48;2;217;189;163mâ–„[38;2;219;193;168m[48;2;220;191;166mâ–„[38;2;222;196;173m[48;2;221;193;169mâ–„[38;2;223;197;175m[48;2;222;193;170mâ–„[38;2;224;199;179m[48;2;222;195;174mâ–„[38;2;224;199;181m[48;2;223;197;177mâ–„[38;2;222;197;179m[48;2;221;195;177mâ–„[38;2;217;192;174m[48;2;218;192;173mâ–„[38;2;214;187;168m[48;2;214;188;169mâ–„[38;2;221;197;177m[48;2;219;195;176mâ–„[38;2;221;196;172m[48;2;208;177;153mâ–„[38;2;186;149;121m[48;2;148;98;67mâ–„[38;2;183;145;118m[48;2;127;72;47mâ–„[38;2;140;97;75m[48;2;100;56;40mâ–„[38;2;28;10;7m[48;2;17;4;4mâ–„[38;2;11;4;4m[48;2;19;10;10mâ–„[38;2;20;12;13m[48;2;13;6;7mâ–„[38;2;29;19;20m[48;2;13;6;6mâ–„[38;2;15;7;7m[48;2;16;7;7mâ–„[38;2;14;6;6m[48;2;19;10;10mâ–„[38;2;10;4;4m[48;2;10;4;4mâ–„[38;2;10;4;4m[48;2;7;2;2mâ–„[38;2;13;4;4m[48;2;4;0;0mâ–„[38;2;14;6;6m[48;2;12;6;6mâ–„[38;2;21;13;13m[48;2;22;14;14mâ–„[38;2;30;23;23m[48;2;26;19;19mâ–„[38;2;17;8;8m[48;2;28;19;19mâ–„[38;2;21;9;8m[48;2;24;14;14mâ–„[38;2;20;8;7m[48;2;11;4;4mâ–„[38;2;27;14;13m[48;2;16;7;7mâ–„[38;2;27;13;12m[48;2;20;8;8mâ–„[38;2;74;53;48m[48;2;55;36;32mâ–„[0m [0m +[0m [38;2;172;163;159m[48;2;108;70;56mâ–„[38;2;134;133;134m[48;2;153;114;99mâ–„[38;2;83;77;75m[48;2;166;151;145mâ–„[38;2;88;53;38m[48;2;109;109;110mâ–„[38;2;131;78;56m[48;2;117;73;61mâ–„[38;2;166;119;94m[48;2;184;102;74mâ–„[38;2;177;140;116m[48;2;205;141;111mâ–„[38;2;204;178;156m[48;2;215;173;147mâ–„[38;2;218;194;173m[48;2;224;201;180mâ–„[38;2;220;197;174m[48;2;220;197;174mâ–„[38;2;221;198;173m[48;2;220;195;171mâ–„[38;2;222;199;175m[48;2;222;198;173mâ–„[38;2;221;197;174m[48;2;222;197;172mâ–„[38;2;220;195;173m[48;2;222;196;172mâ–„[38;2;218;193;174m[48;2;222;197;176mâ–„[38;2;217;192;174m[48;2;222;198;180mâ–„[38;2;212;186;166m[48;2;219;194;176mâ–„[38;2;211;184;163m[48;2;214;188;168mâ–„[38;2;225;203;182m[48;2;213;187;166mâ–„[38;2;238;219;198m[48;2;231;209;187mâ–„[38;2;216;193;170m[48;2;217;195;173mâ–„[38;2;180;158;140m[48;2;169;156;149mâ–„[38;2;196;174;153m[48;2;177;159;147mâ–„[38;2;184;152;129m[48;2;160;120;94mâ–„[38;2;104;74;54m[48;2;56;29;21mâ–„[38;2;18;6;6m[48;2;10;1;2mâ–„[38;2;14;7;8m[48;2;17;9;9mâ–„[38;2;17;9;10m[48;2;26;17;17mâ–„[38;2;17;9;10m[48;2;32;21;21mâ–„[38;2;9;3;3m[48;2;18;9;9mâ–„[38;2;11;4;4m[48;2;13;5;5mâ–„[38;2;12;3;2m[48;2;14;5;5mâ–„[38;2;25;11;9m[48;2;15;3;3mâ–„[38;2;84;61;53m[48;2;49;31;26mâ–„[38;2;103;75;65m[48;2;39;22;20mâ–„[38;2;74;49;43m[48;2;12;2;2mâ–„[38;2;59;36;32m[48;2;26;13;11mâ–„[38;2;58;35;31m[48;2;26;12;10mâ–„[38;2;54;34;30m[48;2;29;14;12mâ–„[38;2;73;50;46m[48;2;25;10;9mâ–„[38;2;106;83;73m[48;2;47;29;27mâ–„[0m[38;2;108;83;73mâ–€[0m [0m +[0m [0m[38;2;107;88;72mâ–„[0m[38;2;151;136;123mâ–„[38;2;150;145;141m[48;2;171;157;145mâ–„[38;2;101;100;101m[48;2;166;159;153mâ–„[38;2;51;50;50m[48;2;154;149;148mâ–„[0m[38;2;91;90;91mâ–€[0m[38;2;40;38;38mâ–€[0m[38;2;96;61;46mâ–€[38;2;120;80;63m[48;2;130;87;66mâ–„[38;2;188;149;124m[48;2;173;138;113mâ–„[38;2;218;190;165m[48;2;206;177;153mâ–„[38;2;224;200;179m[48;2;216;191;169mâ–„[38;2;224;200;179m[48;2;215;190;168mâ–„[38;2;209;180;157m[48;2;213;188;164mâ–„[38;2;203;173;149m[48;2;213;188;161mâ–„[38;2;208;181;159m[48;2;216;192;166mâ–„[38;2;212;186;166m[48;2;218;195;173mâ–„[38;2;211;184;164m[48;2;217;192;172mâ–„[38;2;207;178;158m[48;2;216;191;172mâ–„[38;2;198;166;144m[48;2;214;188;170mâ–„[38;2;192;159;135m[48;2;208;180;160mâ–„[38;2;212;187;164m[48;2;203;174;152mâ–„[38;2;233;214;194m[48;2;219;196;175mâ–„[38;2;235;217;197m[48;2;234;215;195mâ–„[38;2;235;217;197m[48;2;239;222;202mâ–„[38;2;229;210;189m[48;2;213;188;165mâ–„[38;2;217;195;175m[48;2;164;130;103mâ–„[38;2;186;168;161m[48;2;176;146;124mâ–„[38;2;119;85;15m[48;2;163;138;109mâ–„[38;2;120;86;18m[48;2;122;88;22mâ–„[38;2;130;95;22m[48;2;105;72;7mâ–„[38;2;106;83;70m[48;2;6;0;0mâ–„[38;2;39;27;22m[48;2;9;2;3mâ–„[38;2;19;10;10m[48;2;19;11;11mâ–„[38;2;20;12;12m[48;2;15;8;8mâ–„[38;2;19;10;10m[48;2;11;3;4mâ–„[38;2;21;13;13m[48;2;17;7;7mâ–„[38;2;24;13;13m[48;2;69;50;44mâ–„[0m[38;2;41;25;23mâ–„[0m[38;2;77;56;51mâ–„[0m [0m[38;2;105;80;70mâ–€[0m[38;2;110;86;76mâ–€[0m [0m +[0m [38;2;156;120;95m[48;2;54;48;45mâ–„[38;2;75;61;51m[48;2;31;26;23mâ–„[38;2;2;0;0m[48;2;44;31;20mâ–„[38;2;17;14;9m[48;2;75;66;56mâ–„[38;2;30;26;25m[48;2;70;69;68mâ–„[0m[38;2;34;33;33mâ–€[0m [0m[38;2;108;78;64mâ–€[0m[38;2;141;97;77mâ–€[38;2;115;76;59m[48;2;178;134;109mâ–„[38;2;129;88;68m[48;2;200;160;133mâ–„[38;2;131;85;62m[48;2;203;165;137mâ–„[38;2;143;95;68m[48;2;195;155;127mâ–„[38;2;157;111;84m[48;2;202;167;141mâ–„[38;2;152;106;79m[48;2;207;174;150mâ–„[38;2;147;98;70m[48;2;201;167;142mâ–„[38;2;151;104;74m[48;2;188;149;124mâ–„[38;2;178;141;113m[48;2;177;135;106mâ–„[38;2;206;180;157m[48;2;182;146;118mâ–„[38;2;223;202;182m[48;2;206;181;157mâ–„[38;2;230;212;192m[48;2;229;209;189mâ–„[38;2;231;212;193m[48;2;233;215;195mâ–„[38;2;229;210;189m[48;2;233;215;195mâ–„[38;2;242;224;207m[48;2;230;211;190mâ–„[38;2;193;173;151m[48;2;233;216;199mâ–„[38;2;125;96;31m[48;2;198;178;144mâ–„[38;2;131;100;35m[48;2;151;121;57mâ–„[38;2;125;93;29m[48;2;130;94;8mâ–„[38;2;182;158;148m[48;2;129;96;40mâ–„[38;2;197;170;146m[48;2;157;129;107mâ–„[38;2;167;128;100m[48;2;198;167;141mâ–„[38;2;86;53;39m[48;2;83;59;47mâ–„[38;2;19;5;5m[48;2;5;0;0mâ–„[38;2;21;10;10m[48;2;21;12;11mâ–„[38;2;15;6;6m[48;2;25;15;16mâ–„[38;2;23;13;13m[48;2;19;11;12mâ–„[38;2;24;14;14m[48;2;14;6;7mâ–„[38;2;14;7;7m[48;2;21;11;11mâ–„[38;2;15;7;7m[48;2;40;23;22mâ–„[38;2;50;34;32m[48;2;79;59;52mâ–„[0m [0m +[0m [0m[38;2;83;49;32mâ–€[0m[38;2;95;66;47mâ–€[0m[38;2;14;11;9mâ–€[0m [0m[38;2;111;80;64mâ–€[38;2;96;62;49m[48;2;92;53;37mâ–„[38;2;103;63;43m[48;2;89;45;28mâ–„[38;2;136;91;62m[48;2;112;65;42mâ–„[38;2;169;124;88m[48;2;143;97;67mâ–„[38;2;193;156;124m[48;2;180;143;112mâ–„[38;2;207;178;152m[48;2;206;179;155mâ–„[38;2;220;196;174m[48;2;220;198;177mâ–„[38;2;227;206;187m[48;2;226;206;186mâ–„[38;2;228;208;187m[48;2;229;210;190mâ–„[38;2;231;211;192m[48;2;231;212;192mâ–„[38;2;185;162;130m[48;2;237;220;204mâ–„[38;2;132;103;41m[48;2;210;192;169mâ–„[38;2;136;94;5m[48;2;148;123;69mâ–„[38;2;139;111;59m[48;2;136;98;8mâ–„[38;2;190;170;159m[48;2;141;111;45mâ–„[38;2;195;168;145m[48;2;182;155;125mâ–„[38;2;207;180;156m[48;2;190;158;131mâ–„[38;2;210;182;157m[48;2;179;144;117mâ–„[38;2;203;167;137m[48;2;170;123;90mâ–„[38;2;188;143;109m[48;2;149;100;70mâ–„[38;2;159;111;82m[48;2;74;42;31mâ–„[38;2;79;45;34m[48;2;22;7;6mâ–„[38;2;33;14;12m[48;2;33;19;18mâ–„[38;2;24;12;11m[48;2;26;14;14mâ–„[38;2;10;4;4m[48;2;15;7;8mâ–„[38;2;12;4;4m[48;2;10;4;5mâ–„[38;2;32;18;17m[48;2;4;0;0mâ–„[38;2;70;51;47m[48;2;59;42;39mâ–„[0m[38;2;107;85;76mâ–€[0m [0m +[0m [38;2;117;87;71m[48;2;99;67;52mâ–„[38;2;103;62;42m[48;2;105;64;44mâ–„[38;2;131;86;55m[48;2;139;92;63mâ–„[38;2;168;126;92m[48;2;170;124;88mâ–„[38;2;183;144;113m[48;2;192;154;121mâ–„[38;2;207;178;153m[48;2;204;172;144mâ–„[38;2;206;179;154m[48;2;214;187;164mâ–„[38;2;214;189;167m[48;2;222;200;178mâ–„[38;2;167;143;106m[48;2;214;190;169mâ–„[38;2;125;92;23m[48;2;178;153;135mâ–„[38;2;133;94;2m[48;2;119;87;16mâ–„[38;2;146;121;78m[48;2;138;103;27mâ–„[38;2;212;194;172m[48;2;137;107;40mâ–„[38;2;234;218;203m[48;2;197;176;151mâ–„[38;2;229;211;192m[48;2;223;203;184mâ–„[38;2;227;207;189m[48;2;221;201;181mâ–„[38;2;224;203;183m[48;2;222;200;180mâ–„[38;2;220;197;177m[48;2;218;194;174mâ–„[38;2;215;190;168m[48;2;211;183;160mâ–„[38;2;212;182;158m[48;2;202;166;138mâ–„[38;2;208;174;146m[48;2;193;150;118mâ–„[38;2;199;158;127m[48;2;175;128;96mâ–„[38;2;124;79;58m[48;2;103;65;48mâ–„[38;2;129;87;67m[48;2;23;6;5mâ–„[38;2;59;33;25m[48;2;10;1;1mâ–„[38;2;31;16;14m[48;2;48;32;30mâ–„[38;2;30;17;14m[48;2;70;52;47mâ–„[38;2;27;12;10m[48;2;62;44;37mâ–„[38;2;37;20;17m[48;2;73;53;47mâ–„[0m[38;2;60;40;34mâ–„[0m[38;2;99;77;67mâ–„[0m [0m +[0m [38;2;60;45;40m[48;2;142;117;99mâ–„[38;2;114;83;17m[48;2;115;86;64mâ–„[38;2;114;83;55m[48;2;159;128;104mâ–„[38;2;121;83;62m[48;2;182;155;131mâ–„[38;2;160;123;92m[48;2;178;147;123mâ–„[38;2;182;151;127m[48;2;185;154;128mâ–„[38;2;162;136;100m[48;2;199;171;151mâ–„[38;2;134;102;34m[48;2;163;140;122mâ–„[38;2;129;92;7m[48;2;120;85;5mâ–„[38;2;146;117;62m[48;2;126;95;34mâ–„[38;2;214;197;176m[48;2;135;103;35mâ–„[38;2;234;216;197m[48;2;221;207;198mâ–„[38;2;229;211;192m[48;2;237;219;200mâ–„[38;2;230;212;194m[48;2;229;211;192mâ–„[38;2;229;209;192m[48;2;229;210;192mâ–„[38;2;225;205;187m[48;2;226;206;187mâ–„[38;2;223;201;183m[48;2;224;202;183mâ–„[38;2;220;196;177m[48;2;219;195;175mâ–„[38;2;217;192;171m[48;2;216;189;167mâ–„[38;2;213;185;162m[48;2;212;183;159mâ–„[38;2;210;179;154m[48;2;209;177;150mâ–„[38;2;210;178;151m[48;2;202;166;137mâ–„[38;2;191;153;124m[48;2;146;102;78mâ–„[38;2;133;89;66m[48;2;148;102;77mâ–„[38;2;154;111;86m[48;2;117;76;58mâ–„[38;2;113;71;52m[48;2;34;12;7mâ–„[38;2;68;36;26m[48;2;35;15;11mâ–„[38;2;57;31;25m[48;2;41;20;16mâ–„[38;2;41;22;18m[48;2;57;31;25mâ–„[38;2;25;12;11m[48;2;35;18;16mâ–„[38;2;61;41;36m[48;2;69;49;43mâ–„[0m[38;2;125;99;86mâ–„[0m [0m +[0m [38;2;103;71;3m[48;2;110;75;0mâ–„[38;2;129;90;6m[48;2;91;58;8mâ–„[38;2;124;89;21m[48;2;132;92;64mâ–„[38;2;118;86;32m[48;2;181;147;123mâ–„[38;2;137;97;6m[48;2;147;122;86mâ–„[38;2;119;84;13m[48;2;118;85;14mâ–„[38;2;143;112;53m[48;2;114;79;8mâ–„[38;2;199;175;149m[48;2;128;98;45mâ–„[38;2;224;202;181m[48;2;219;204;198mâ–„[38;2;226;207;187m[48;2;232;213;193mâ–„[38;2;231;212;193m[48;2;230;213;193mâ–„[38;2;231;213;194m[48;2;231;213;195mâ–„[38;2;231;213;195m[48;2;231;212;195mâ–„[38;2;230;211;194m[48;2;230;211;194mâ–„[38;2;228;208;189m[48;2;226;207;189mâ–„[38;2;225;205;186m[48;2;224;203;185mâ–„[38;2;221;199;180m[48;2;221;198;179mâ–„[38;2;217;193;173m[48;2;217;194;175mâ–„[38;2;213;188;168m[48;2;214;188;167mâ–„[38;2;208;181;159m[48;2;210;181;159mâ–„[38;2;205;175;153m[48;2;210;180;157mâ–„[38;2;205;174;149m[48;2;203;170;143mâ–„[38;2;180;140;113m[48;2;153;106;79mâ–„[38;2;161;113;85m[48;2;168;122;95mâ–„[38;2;169;123;94m[48;2;184;140;110mâ–„[38;2;147;101;76m[48;2;124;80;60mâ–„[38;2;81;44;32m[48;2;82;48;36mâ–„[38;2;84;47;34m[48;2;50;26;21mâ–„[38;2;108;67;50m[48;2;56;31;26mâ–„[38;2;109;72;57m[48;2;91;66;57mâ–„[0m [0m +[0m [38;2;92;63;20m[48;2;99;71;14mâ–„[38;2;99;71;28m[48;2;116;82;4mâ–„[38;2;96;73;42m[48;2;144;99;0mâ–„[38;2;123;86;6m[48;2;115;79;0mâ–„[38;2;159;133;97m[48;2;120;84;9mâ–„[38;2;219;194;172m[48;2;163;139;121mâ–„[38;2;218;195;172m[48;2;211;185;163mâ–„[38;2;224;204;185m[48;2;222;200;180mâ–„[38;2;230;211;192m[48;2;227;207;188mâ–„[38;2;232;214;196m[48;2;231;212;193mâ–„[38;2;232;213;195m[48;2;231;212;194mâ–„[38;2;231;212;194m[48;2;231;212;193mâ–„[38;2;231;212;194m[48;2;231;212;194mâ–„[38;2;230;211;193m[48;2;230;210;192mâ–„[38;2;228;208;190m[48;2;227;206;187mâ–„[38;2;225;204;185m[48;2;224;203;183mâ–„[38;2;223;202;182m[48;2;221;199;180mâ–„[38;2;221;198;178m[48;2;217;193;173mâ–„[38;2;216;192;172m[48;2;212;186;165mâ–„[38;2;212;185;163m[48;2;208;180;158mâ–„[38;2;209;181;158m[48;2;205;175;152mâ–„[38;2;208;178;155m[48;2;204;173;148mâ–„[38;2;208;177;153m[48;2;207;174;148mâ–„[38;2;211;178;153m[48;2;204;167;139mâ–„[38;2;212;178;150m[48;2;199;159;130mâ–„[38;2;195;154;124m[48;2;183;137;107mâ–„[38;2;165;119;89m[48;2;108;66;47mâ–„[38;2;115;72;51m[48;2;91;49;33mâ–„[38;2;115;72;51m[48;2;161;112;83mâ–„[38;2;134;89;65m[48;2;125;80;60mâ–„[38;2;164;117;89m[48;2;124;86;67mâ–„[0m[38;2;152;115;92mâ–„[0m [0m +[0m [0m[38;2;131;92;75mâ–„[0m[38;2;135;86;62mâ–„[38;2;152;108;86m[48;2;133;89;63mâ–„[38;2;149;119;92m[48;2;156;111;88mâ–„[38;2;128;103;55m[48;2;110;80;42mâ–„[38;2;202;149;0m[48;2;125;93;37mâ–„[38;2;152;108;0m[48;2;152;120;65mâ–„[38;2;123;110;105m[48;2;120;88;25mâ–„[38;2;229;209;193m[48;2;192;171;148mâ–„[38;2;224;204;184m[48;2;221;200;180mâ–„[38;2;229;210;192m[48;2;223;203;184mâ–„[38;2;229;210;191m[48;2;228;208;190mâ–„[38;2;229;210;192m[48;2;229;210;192mâ–„[38;2;230;212;194m[48;2;230;212;194mâ–„[38;2;229;211;193m[48;2;231;213;195mâ–„[38;2;229;210;192m[48;2;230;211;193mâ–„[38;2;229;209;192m[48;2;229;210;192mâ–„[38;2;229;209;192m[48;2;229;210;193mâ–„[38;2;228;208;190m[48;2;228;208;190mâ–„[38;2;226;206;188m[48;2;225;205;187mâ–„[38;2;222;201;183m[48;2;223;202;183mâ–„[38;2;219;196;178m[48;2;219;196;177mâ–„[38;2;214;190;170m[48;2;216;191;171mâ–„[38;2;211;186;165m[48;2;213;187;166mâ–„[38;2;210;181;159m[48;2;211;183;161mâ–„[38;2;211;181;157m[48;2;211;184;161mâ–„[38;2;211;182;158m[48;2;212;184;162mâ–„[38;2;212;183;159m[48;2;212;182;158mâ–„[38;2;215;186;161m[48;2;213;181;155mâ–„[38;2;213;181;156m[48;2;213;180;153mâ–„[38;2;211;177;150m[48;2;207;169;140mâ–„[38;2;205;168;140m[48;2;179;135;106mâ–„[38;2;177;135;107m[48;2;120;74;51mâ–„[38;2;149;102;75m[48;2;136;87;62mâ–„[38;2;153;103;72m[48;2;155;107;78mâ–„[38;2;176;134;104m[48;2;146;107;85mâ–„[0m [0m +[0m [0m[38;2;130;90;71mâ–„[38;2;121;74;53m[48;2;142;107;91mâ–„[38;2;133;88;64m[48;2;124;81;63mâ–„[38;2;168;128;96m[48;2;123;75;51mâ–„[38;2;150;126;117m[48;2;156;115;92mâ–„[38;2;157;112;7m[48;2;132;102;64mâ–„[38;2;255;211;0m[48;2;199;144;0mâ–„[38;2;176;126;3m[48;2;246;179;0mâ–„[38;2;12;7;1m[48;2;238;172;2mâ–„[38;2;95;65;2m[48;2;253;187;4mâ–„[38;2;226;171;0m[48;2;193;145;17mâ–„[38;2;117;85;3m[48;2;167;149;122mâ–„[38;2;196;183;178m[48;2;234;215;200mâ–„[38;2;236;216;196m[48;2;229;210;192mâ–„[38;2;229;211;194m[48;2;230;212;194mâ–„[38;2;230;212;194m[48;2;230;212;194mâ–„[38;2;229;211;193m[48;2;230;211;193mâ–„[38;2;230;212;194m[48;2;230;211;194mâ–„[38;2;230;211;194m[48;2;230;211;193mâ–„[38;2;229;210;193m[48;2;229;211;193mâ–„[38;2;228;209;191m[48;2;229;210;192mâ–„[38;2;227;208;190m[48;2;228;209;191mâ–„[38;2;225;206;188m[48;2;226;207;189mâ–„[38;2;221;201;183m[48;2;224;203;185mâ–„[38;2;216;193;173m[48;2;219;196;177mâ–„[38;2;212;187;165m[48;2;213;189;169mâ–„[38;2;211;184;161m[48;2;211;183;161mâ–„[38;2;207;175;149m[48;2;208;178;154mâ–„[38;2;204;170;143m[48;2;208;176;151mâ–„[38;2;202;168;142m[48;2;207;175;150mâ–„[38;2;204;172;147m[48;2;209;178;154mâ–„[38;2;209;180;158m[48;2;213;184;161mâ–„[38;2;212;184;162m[48;2;214;185;162mâ–„[38;2;211;182;160m[48;2;211;180;155mâ–„[38;2;209;179;156m[48;2;207;174;147mâ–„[38;2;205;172;147m[48;2;207;172;143mâ–„[38;2;199;162;134m[48;2;203;165;135mâ–„[38;2;195;159;131m[48;2;193;150;118mâ–„[38;2;192;170;150m[48;2;185;139;104mâ–„[38;2;174;155;139m[48;2;185;152;124mâ–„[0m[38;2;185;166;148mâ–„[38;2;189;163;138m[48;2;194;173;154mâ–„[38;2;189;168;148m[48;2;201;185;168mâ–„[0m[38;2;211;202;191mâ–„[0m [0m +[0m [0m[38;2;150;127;112mâ–„[0m[38;2;127;91;73mâ–„[38;2;123;82;61m[48;2;121;82;65mâ–„[38;2;141;102;76m[48;2;121;77;54mâ–„[38;2;159;121;93m[48;2;147;105;78mâ–„[38;2;173;141;113m[48;2;164;126;99mâ–„[38;2;185;161;140m[48;2;181;151;125mâ–„[38;2;156;135;114m[48;2;178;155;141mâ–„[38;2;85;69;44m[48;2;101;74;32mâ–„[38;2;59;40;1m[48;2;229;164;0mâ–„[38;2;129;92;1m[48;2;255;197;1mâ–„[38;2;215;153;0m[48;2;207;153;1mâ–„[38;2;255;201;2m[48;2;110;83;1mâ–„[38;2;222;163;2m[48;2;53;40;17mâ–„[38;2;143;126;92m[48;2;146;133;126mâ–„[38;2;227;210;199m[48;2;223;205;187mâ–„[38;2;224;206;188m[48;2;228;210;194mâ–„[38;2;226;208;192m[48;2;227;209;193mâ–„[38;2;226;207;191m[48;2;228;209;192mâ–„[38;2;226;208;192m[48;2;228;209;192mâ–„[38;2;226;208;192m[48;2;228;209;193mâ–„[38;2;224;205;189m[48;2;227;208;191mâ–„[38;2;224;205;189m[48;2;226;207;190mâ–„[38;2;223;203;188m[48;2;225;206;190mâ–„[38;2;220;201;185m[48;2;223;204;188mâ–„[38;2;217;197;181m[48;2;220;200;184mâ–„[38;2;215;194;177m[48;2;217;196;179mâ–„[38;2;212;189;172m[48;2;214;191;172mâ–„[38;2;210;187;168m[48;2;213;188;168mâ–„[38;2;207;181;161m[48;2;209;182;161mâ–„[38;2;204;175;152m[48;2;206;175;151mâ–„[38;2;202;171;146m[48;2;202;168;142mâ–„[38;2;198;163;138m[48;2;199;163;137mâ–„[38;2;195;160;135m[48;2;199;164;139mâ–„[38;2;199;167;144m[48;2;203;174;152mâ–„[38;2;204;177;156m[48;2;205;176;155mâ–„[38;2;201;176;157m[48;2;206;177;156mâ–„[38;2;192;168;149m[48;2;205;176;154mâ–„[38;2;184;161;140m[48;2;199;168;143mâ–„[38;2;182;162;142m[48;2;192;163;140mâ–„[38;2;190;175;156m[48;2;183;161;142mâ–„[38;2;182;170;155m[48;2;171;156;141mâ–„[38;2;176;166;152m[48;2;160;148;135mâ–„[38;2;148;135;121m[48;2;123;106;92mâ–„[38;2;144;127;112m[48;2;182;165;146mâ–„[38;2;199;183;167m[48;2;201;186;169mâ–„[38;2;210;198;185m[48;2;207;196;183mâ–„[38;2;215;202;189m[48;2;223;214;203mâ–„[0m[38;2;210;199;188mâ–„[0m [0m +[0m [0m[38;2;189;175;159mâ–„[38;2;175;159;146m[48;2;180;164;150mâ–„[38;2;157;143;134m[48;2;151;126;110mâ–„[38;2;149;134;126m[48;2;144;119;104mâ–„[38;2;163;147;137m[48;2;149;126;112mâ–„[38;2;198;186;172m[48;2;167;145;128mâ–„[38;2;190;179;165m[48;2;183;163;145mâ–„[38;2;174;162;149m[48;2;194;177;158mâ–„[38;2;195;182;168m[48;2;191;176;165mâ–„[38;2;118;108;102m[48;2;84;69;39mâ–„[38;2;111;71;0m[48;2;244;176;0mâ–„[38;2;240;179;0m[48;2;216;160;3mâ–„[38;2;255;188;1m[48;2;20;15;1mâ–„[38;2;255;188;0m[48;2;37;26;1mâ–„[38;2;250;187;0m[48;2;232;169;4mâ–„[38;2;160;110;0m[48;2;255;200;0mâ–„[38;2;132;117;103m[48;2;127;99;28mâ–„[38;2;225;212;202m[48;2;211;200;200mâ–„[38;2;225;215;206m[48;2;230;214;198mâ–„[38;2;230;219;210m[48;2;225;208;192mâ–„[38;2;229;217;207m[48;2;224;207;191mâ–„[38;2;228;213;200m[48;2;221;202;186mâ–„[38;2;225;208;193m[48;2;222;204;187mâ–„[38;2;220;202;185m[48;2;223;204;188mâ–„[38;2;219;200;183m[48;2;222;203;187mâ–„[38;2;219;200;184m[48;2;222;202;187mâ–„[38;2;218;198;182m[48;2;219;200;184mâ–„[38;2;217;197;182m[48;2;217;196;180mâ–„[38;2;216;196;180m[48;2;215;194;178mâ–„[38;2;213;192;176m[48;2;212;190;172mâ–„[38;2;209;188;171m[48;2;209;185;166mâ–„[38;2;207;183;165m[48;2;205;179;160mâ–„[38;2;204;177;156m[48;2;200;171;148mâ–„[38;2;203;179;159m[48;2;198;165;140mâ–„[38;2;203;181;163m[48;2;195;160;133mâ–„[38;2;191;170;153m[48;2;193;158;132mâ–„[38;2;194;177;161m[48;2;198;171;150mâ–„[38;2;189;173;157m[48;2;197;176;159mâ–„[38;2;185;170;155m[48;2;179;159;141mâ–„[38;2;195;180;162m[48;2;170;148;128mâ–„[38;2;198;180;160m[48;2;197;179;159mâ–„[38;2;216;204;189m[48;2;197;181;162mâ–„[38;2;205;193;180m[48;2;205;192;175mâ–„[38;2;209;200;189m[48;2;202;190;176mâ–„[38;2;204;195;186m[48;2;186;176;163mâ–„[38;2;204;194;184m[48;2;212;202;190mâ–„[0m[38;2;198;186;173mâ–€[0m [0m[38;2;193;179;165mâ–€[0m [0m +[0m [0m[38;2;159;142;132mâ–€[0m[38;2;204;192;179mâ–€[0m[38;2;193;179;166mâ–€[0m[38;2;189;176;162mâ–€[0m[38;2;189;177;164mâ–€[0m[38;2;207;196;184mâ–€[0m[38;2;199;186;170mâ–€[38;2;209;194;174m[48;2;125;114;112mâ–„[38;2;100;88;75m[48;2;77;58;24mâ–„[38;2;62;45;16m[48;2;232;170;0mâ–„[38;2;74;66;66m[48;2;148;110;12mâ–„[38;2;196;180;176m[48;2;118;95;52mâ–„[38;2;226;208;189m[48;2;152;139;129mâ–„[38;2;206;190;173m[48;2;220;204;191mâ–„[38;2;208;193;177m[48;2;219;202;187mâ–„[38;2;206;189;175m[48;2;219;204;191mâ–„[38;2;210;194;179m[48;2;219;204;191mâ–„[38;2;212;198;185m[48;2;220;206;195mâ–„[38;2;212;198;185m[48;2;228;215;204mâ–„[38;2;210;195;182m[48;2;235;221;209mâ–„[38;2;210;195;180m[48;2;229;213;199mâ–„[38;2;213;197;184m[48;2;227;210;196mâ–„[38;2;214;199;185m[48;2;229;212;198mâ–„[38;2;211;196;183m[48;2;230;214;199mâ–„[38;2;213;197;183m[48;2;230;213;199mâ–„[38;2;213;197;184m[48;2;228;212;198mâ–„[38;2;213;198;185m[48;2;226;210;197mâ–„[38;2;213;199;186m[48;2;225;209;196mâ–„[38;2;208;195;182m[48;2;220;204;191mâ–„[38;2;204;190;178m[48;2;213;196;183mâ–„[38;2;205;190;178m[48;2;210;195;182mâ–„[38;2;210;197;185m[48;2;215;201;189mâ–„[38;2;209;196;186m[48;2;221;209;198mâ–„[38;2;204;190;179m[48;2;215;201;188mâ–„[0m[38;2;219;208;196mâ–€[0m[38;2;203;193;183mâ–€[0m[38;2;189;177;165mâ–€[0m[38;2;182;166;151mâ–€[0m[38;2;197;185;172mâ–€[0m [0m[38;2;194;183;172mâ–€[0m [0m Binary files differdiff --git a/tools/make_logo_ans.py b/tools/make_logo_ans.py new file mode 100644 index 0000000..9736e30 --- /dev/null +++ b/tools/make_logo_ans.py @@ -0,0 +1,90 @@ +#!/usr/bin/env python3 +"""Regenerate logo.ans (the block-art splash) from logo.png. + +logo.ans is the fallback for terminals that can't draw an image, so it has to be +rendered from the same artwork or the two drift apart -- which is exactly what +happened when logo.png was replaced and the old block art kept a scan line that +no longer existed. + +Each cell is a lower half-block: the background colour paints the upper pixel, +the foreground the lower one, so one cell carries two pixel rows. Transparent +pixels emit no colour at all, letting the terminal background show through, and +a cell whose lower pixel is transparent uses an upper half-block instead so the +one opaque pixel still lands on the correct half. + +Needs Pillow, so run it with a python that has it (NOT ~/ida-venv): + + /usr/bin/python3 tools/make_logo_ans.py [--cols 60] [-o logo.ans] +""" +from __future__ import annotations + +import argparse +import os +import sys + +from PIL import Image + +REPO = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) +ALPHA_ON = 128 # at/above this a pixel counts as present + +UPPER, LOWER = "\u2580", "\u2584" # upper half block, lower half block + + +def main() -> int: + ap = argparse.ArgumentParser() + ap.add_argument("--png", default=os.path.join(REPO, "logo.png")) + ap.add_argument("-o", "--out", default=os.path.join(REPO, "logo.ans")) + ap.add_argument("--cols", type=int, default=60) + ap.add_argument("--cell", default="9x22", + help="terminal cell size WxH in px, for the aspect ratio") + args = ap.parse_args() + + cw, ch = (int(v) for v in args.cell.lower().split("x")) + im = Image.open(args.png).convert("RGBA") + bbox = im.getchannel("A").getbbox() + if bbox: + im = im.crop(bbox) + w, h = im.size + cols = args.cols + # two pixel rows per cell, and cells are taller than they are wide + rows = max(1, round((h / w) * cols * cw / ch)) + im = im.resize((cols, rows * 2), Image.LANCZOS) + px = im.load() + + out: list[str] = [] + for r in range(rows): + line = [] + prev = None + for c in range(cols): + top = px[c, r * 2] + bot = px[c, r * 2 + 1] + t_on, b_on = top[3] >= ALPHA_ON, bot[3] >= ALPHA_ON + if not t_on and not b_on: + sgr, ch_ = "\033[0m", " " + elif t_on and b_on: + sgr = (f"\033[38;2;{bot[0]};{bot[1]};{bot[2]}m" + f"\033[48;2;{top[0]};{top[1]};{top[2]}m") + ch_ = LOWER + elif b_on: # only the lower pixel is present + sgr = f"\033[0m\033[38;2;{bot[0]};{bot[1]};{bot[2]}m" + ch_ = LOWER + else: # only the upper pixel is present + sgr = f"\033[0m\033[38;2;{top[0]};{top[1]};{top[2]}m" + ch_ = UPPER + if sgr != prev: + line.append(sgr) + prev = sgr + line.append(ch_) + line.append("\033[0m") + out.append("".join(line)) + + text = "\n".join(out) + "\n" + with open(args.out, "w", encoding="utf-8") as f: + f.write(text) + print(f"{args.png} {w}x{h} -> {args.out} {cols}x{rows} cells " + f"({len(text):,} bytes, cell {cw}x{ch})") + return 0 + + +if __name__ == "__main__": + sys.exit(main()) |
