@olwiba/dx 0.0.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js ADDED
@@ -0,0 +1,1428 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropNames = Object.getOwnPropertyNames;
3
+ var __esm = (fn, res) => function __init() {
4
+ return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
5
+ };
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+
11
+ // src/ascii/compose.ts
12
+ function composeAsciiText(font, text) {
13
+ const charBlocks = [];
14
+ for (const ch of text) {
15
+ const code = ch.charCodeAt(0);
16
+ const glyph = font.chars.get(code) ?? font.chars.get(32);
17
+ if (!glyph) continue;
18
+ const width = Math.max(...glyph.map((line) => line.length));
19
+ charBlocks.push({
20
+ lines: glyph.map((line) => line.padEnd(width)),
21
+ width
22
+ });
23
+ }
24
+ const cols = charBlocks.reduce((sum, block) => sum + block.width, 0);
25
+ const rows = font.height;
26
+ const cells = [];
27
+ let offsetX = 0;
28
+ for (const block of charBlocks) {
29
+ for (let row = 0; row < rows; row++) {
30
+ const line = block.lines[row] ?? "";
31
+ for (let col = 0; col < line.length; col++) {
32
+ const ch = line[col];
33
+ if (ch === "\u2588" || ch === "\u2591") {
34
+ cells.push({ ch, col: offsetX + col, row });
35
+ }
36
+ }
37
+ }
38
+ offsetX += block.width;
39
+ }
40
+ return { cells, cols, rows };
41
+ }
42
+ var init_compose = __esm({
43
+ "src/ascii/compose.ts"() {
44
+ }
45
+ });
46
+
47
+ // src/ascii/fonts/dosrebel-data.ts
48
+ var dosrebelFont;
49
+ var init_dosrebel_data = __esm({
50
+ "src/ascii/fonts/dosrebel-data.ts"() {
51
+ dosrebelFont = `flf2a$ 11 8 35 -1 15
52
+ Rebel by Valerie Mates (popcorn@cyberspace.org), based on a font by Ron Bliss
53
+ (who sometimes goes by the name "rebel" because his initials are REB).
54
+ NOTE: THIS FONT ONLY WORKS IN MS-DOS.
55
+ May 27, 1994
56
+
57
+ Explanation of first line:
58
+ flf2 - "magic number" for file identification
59
+ a - should always be \`a', for now
60
+ $ - the "hardblank" -- prints as a blank, but can't be smushed
61
+ 11 - height of a character
62
+ 8 - height of a character, not including descenders
63
+ 35 - max line length (excluding comment lines) + a fudge factor
64
+ -1 - default smushmode for this font (like "-m 15" on command line)
65
+ 15 - number of comment lines
66
+
67
+ $$$@
68
+ $$$@
69
+ $$$@
70
+ $$$@
71
+ $$$@
72
+ $$$@
73
+ $$$@
74
+ $$$@
75
+ $$$@
76
+ $$$@
77
+ $$$@@
78
+ \u2588\u2588\u2588@
79
+ \u2591\u2588\u2588\u2588@
80
+ \u2591\u2588\u2588\u2588@
81
+ \u2591\u2588\u2588\u2588@
82
+ \u2591\u2588\u2588\u2588@
83
+ \u2591\u2591\u2591 @
84
+ \u2588\u2588\u2588@
85
+ \u2591\u2591\u2591 @
86
+ @
87
+ @
88
+ @@
89
+ \u2588\u2588 \u2588\u2588@
90
+ \u2591\u2588\u2588\u2591\u2588\u2588@
91
+ \u2591\u2591 \u2591\u2591 @
92
+ @
93
+ @
94
+ @
95
+ @
96
+ @
97
+ @
98
+ @
99
+ @@
100
+ \u2588\u2588\u2588 \u2588\u2588\u2588 @
101
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588@
102
+ \u2591\u2591\u2591\u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588\u2591 @
103
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588@
104
+ \u2591\u2591\u2591\u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588\u2591 @
105
+ \u2591\u2591\u2591 \u2591\u2591\u2591 @
106
+ @
107
+ @
108
+ @
109
+ @
110
+ @@
111
+ \u2588\u2588\u2588 @
112
+ \u2588\u2588\u2588\u2588\u2588\u2588 @
113
+ \u2588\u2588\u2588\u2591\u2591\u2591 @
114
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588 @
115
+ \u2591\u2591\u2591\u2591\u2588\u2588\u2588 @
116
+ \u2588\u2588\u2588\u2588\u2588\u2588 @
117
+ \u2591\u2591\u2591\u2588\u2588\u2588 @
118
+ \u2591\u2591\u2591 @
119
+ @
120
+ @
121
+ @@
122
+ \u2588\u2588\u2588 \u2588\u2588\u2588@
123
+ \u2591\u2591\u2591 \u2588\u2588\u2588\u2591 @
124
+ \u2588\u2588\u2588\u2591 @
125
+ \u2588\u2588\u2588\u2591 @
126
+ \u2588\u2588\u2588\u2591 @
127
+ \u2588\u2588\u2588\u2591 @
128
+ \u2588\u2588\u2588\u2591 \u2588\u2588\u2588 @
129
+ \u2591\u2591\u2591 \u2591\u2591\u2591 @
130
+ @
131
+ @
132
+ @@
133
+ \u2588\u2588\u2588\u2588\u2588\u2588 @
134
+ \u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588 @
135
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588 @
136
+ \u2588\u2588\u2588\u2588\u2588\u2588 @
137
+ \u2591\u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588 @
138
+ \u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588 @
139
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2591\u2588\u2588\u2588@
140
+ \u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591 @
141
+ @
142
+ @
143
+ @@
144
+ \u2588\u2588@
145
+ \u2588\u2588\u2588@
146
+ \u2591\u2591\u2591 @
147
+ @
148
+ @
149
+ @
150
+ @
151
+ @
152
+ @
153
+ @
154
+ @@
155
+ \u2588\u2588\u2588@
156
+ \u2588\u2588\u2588 @
157
+ \u2588\u2588\u2588 @
158
+ \u2591\u2588\u2588\u2588 @
159
+ \u2591\u2588\u2588\u2588 @
160
+ \u2591\u2591\u2588\u2588\u2588 @
161
+ \u2591\u2591\u2588\u2588\u2588@
162
+ \u2591\u2591\u2591 @
163
+ @
164
+ @
165
+ @@
166
+ \u2588\u2588\u2588 @
167
+ \u2591\u2591\u2588\u2588\u2588 @
168
+ \u2591\u2591\u2588\u2588\u2588@
169
+ \u2591\u2588\u2588\u2588@
170
+ \u2591\u2588\u2588\u2588@
171
+ \u2588\u2588\u2588 @
172
+ \u2588\u2588\u2591 @
173
+ \u2591\u2591\u2591 @
174
+ @
175
+ @
176
+ @@
177
+ \u2588\u2588\u2588 @
178
+ \u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2588\u2588\u2588@
179
+ \u2591\u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2591 @
180
+ \u2591\u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2591 @
181
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
182
+ \u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588@
183
+ \u2591\u2591\u2591 \u2591\u2588\u2588\u2588 \u2591\u2591\u2591 @
184
+ \u2591\u2591\u2591 @
185
+ @
186
+ @
187
+ @@
188
+ @
189
+ \u2588\u2588\u2588 @
190
+ \u2591\u2588\u2588\u2588 @
191
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588@
192
+ \u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588\u2591\u2591\u2591 @
193
+ \u2591\u2588\u2588\u2588 @
194
+ \u2591\u2591\u2591 @
195
+ @
196
+ @
197
+ @
198
+ @@
199
+ @
200
+ @
201
+ @
202
+ @
203
+ @
204
+ @
205
+ \u2588\u2588@
206
+ \u2588\u2588 @
207
+ \u2591\u2591 @
208
+ @
209
+ @@
210
+ @
211
+ @
212
+ @
213
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588@
214
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
215
+ @
216
+ @
217
+ @
218
+ @
219
+ @
220
+ @@
221
+ @
222
+ @
223
+ @
224
+ @
225
+ @
226
+ @
227
+ \u2588\u2588@
228
+ \u2591\u2591 @
229
+ @
230
+ @
231
+ @@
232
+ \u2588\u2588\u2588@
233
+ \u2588\u2588\u2588\u2591 @
234
+ \u2588\u2588\u2588\u2591 @
235
+ \u2588\u2588\u2588\u2591 @
236
+ \u2588\u2588\u2588\u2591 @
237
+ \u2588\u2588\u2588\u2591 @
238
+ \u2588\u2588\u2588\u2591 @
239
+ \u2591\u2591\u2591 @
240
+ @
241
+ @
242
+ @@
243
+ \u2588\u2588\u2588\u2588\u2588 @
244
+ \u2588\u2588\u2588\u2591\u2591\u2591\u2588\u2588\u2588 @
245
+ \u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588@
246
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
247
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
248
+ \u2591\u2591\u2588\u2588\u2588 \u2588\u2588\u2588 @
249
+ \u2591\u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2591 @
250
+ \u2591\u2591\u2591\u2591\u2591\u2591 @
251
+ @
252
+ @
253
+ @@
254
+ \u2588\u2588\u2588\u2588 @
255
+ \u2591\u2591\u2588\u2588\u2588 @
256
+ \u2591\u2588\u2588\u2588 @
257
+ \u2591\u2588\u2588\u2588 @
258
+ \u2591\u2588\u2588\u2588 @
259
+ \u2591\u2588\u2588\u2588 @
260
+ \u2588\u2588\u2588\u2588\u2588@
261
+ \u2591\u2591\u2591\u2591\u2591 @
262
+ @
263
+ @
264
+ @@
265
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
266
+ \u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2588\u2588\u2588@
267
+ \u2591\u2591\u2591 \u2591\u2588\u2588\u2588@
268
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
269
+ \u2588\u2588\u2588\u2591\u2591\u2591\u2591 @
270
+ \u2588\u2588\u2588 \u2588@
271
+ \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588@
272
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
273
+ @
274
+ @
275
+ @@
276
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
277
+ \u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2588\u2588\u2588@
278
+ \u2591\u2591\u2591 \u2591\u2588\u2588\u2588@
279
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2591 @
280
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588@
281
+ \u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
282
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
283
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
284
+ @
285
+ @
286
+ @@
287
+ \u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588 @
288
+ \u2591\u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588 @
289
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2588@
290
+ \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588@
291
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588\u2591\u2588@
292
+ \u2591\u2588\u2588\u2588\u2591 @
293
+ \u2588\u2588\u2588\u2588\u2588 @
294
+ \u2591\u2591\u2591\u2591\u2591 @
295
+ @
296
+ @
297
+ @@
298
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588@
299
+ \u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2588@
300
+ \u2591\u2588\u2588\u2588 \u2591 @
301
+ \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
302
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588@
303
+ \u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
304
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
305
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
306
+ @
307
+ @
308
+ @@
309
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
310
+ \u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2588\u2588\u2588@
311
+ \u2591\u2588\u2588\u2588 \u2591\u2591\u2591 @
312
+ \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
313
+ \u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2588\u2588\u2588@
314
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
315
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
316
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
317
+ @
318
+ @
319
+ @@
320
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588@
321
+ \u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2588\u2588\u2588@
322
+ \u2591\u2591\u2591 \u2588\u2588\u2588 @
323
+ \u2588\u2588\u2588 @
324
+ \u2588\u2588\u2588 @
325
+ \u2588\u2588\u2588 @
326
+ \u2588\u2588\u2588 @
327
+ \u2591\u2591\u2591 @
328
+ @
329
+ @
330
+ @@
331
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
332
+ \u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2588\u2588\u2588 @
333
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
334
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
335
+ \u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2588\u2588\u2588 @
336
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
337
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
338
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
339
+ @
340
+ @
341
+ @@
342
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
343
+ \u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2588\u2588\u2588@
344
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
345
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588@
346
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588@
347
+ \u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
348
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
349
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
350
+ @
351
+ @
352
+ @@
353
+ @
354
+ @
355
+ \u2588\u2588@
356
+ \u2591\u2591 @
357
+ @
358
+ @
359
+ \u2588\u2588@
360
+ \u2591\u2591 @
361
+ @
362
+ @
363
+ @@
364
+ @
365
+ @
366
+ @
367
+ @
368
+ \u2588\u2588@
369
+ \u2591\u2591 @
370
+ \u2588\u2588@
371
+ \u2588\u2588 @
372
+ \u2591\u2591 @
373
+ @
374
+ @@
375
+ \u2588\u2588\u2588@
376
+ \u2588\u2588\u2588\u2591 @
377
+ \u2588\u2588\u2588\u2591 @
378
+ \u2588\u2588\u2588\u2591 @
379
+ \u2591\u2591\u2591\u2588\u2588\u2588 @
380
+ \u2591\u2591\u2591\u2588\u2588\u2588 @
381
+ \u2591\u2591\u2591\u2588\u2588\u2588@
382
+ \u2591\u2591\u2591 @
383
+ @
384
+ @
385
+ @@
386
+ @
387
+ @
388
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588@
389
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
390
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588@
391
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
392
+ @
393
+ @
394
+ @
395
+ @
396
+ @@
397
+ \u2588\u2588\u2588 @
398
+ \u2591\u2591\u2591\u2588\u2588\u2588 @
399
+ \u2591\u2591\u2591\u2588\u2588\u2588 @
400
+ \u2591\u2591\u2591\u2588\u2588\u2588@
401
+ \u2588\u2588\u2588\u2591 @
402
+ \u2588\u2588\u2588\u2591 @
403
+ \u2588\u2588\u2588\u2591 @
404
+ \u2591\u2591\u2591 @
405
+ @
406
+ @
407
+ @@
408
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
409
+ \u2588\u2588\u2588\u2591\u2591\u2591\u2588\u2588\u2588@
410
+ \u2591\u2591\u2591 \u2591\u2588\u2588\u2588@
411
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
412
+ \u2591\u2588\u2588\u2588\u2591\u2591\u2591 @
413
+ \u2591\u2591\u2591 @
414
+ \u2588\u2588\u2588 @
415
+ \u2591\u2591\u2591 @
416
+ @
417
+ @
418
+ @@
419
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
420
+ \u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591 @
421
+ \u2591\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588 @
422
+ \u2591\u2588\u2588\u2588\u2591\u2588\u2588\u2588\u2591\u2588\u2588\u2588@
423
+ \u2591\u2588\u2588\u2588\u2591\u2588\u2588\u2588\u2591\u2588\u2588\u2588@
424
+ \u2591\u2588\u2588\u2588\u2591\u2591\u2591 \u2591\u2588\u2588\u2588@
425
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
426
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
427
+ @
428
+ @
429
+ @@
430
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
431
+ \u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588 @
432
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
433
+ \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
434
+ \u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588 @
435
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
436
+ \u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588@
437
+ \u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591 @
438
+ @
439
+ @
440
+ @@
441
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
442
+ \u2591\u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588@
443
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
444
+ \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
445
+ \u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588@
446
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
447
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
448
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
449
+ @
450
+ @
451
+ @@
452
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
453
+ \u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588@
454
+ \u2588\u2588\u2588 \u2591\u2591\u2591 @
455
+ \u2591\u2588\u2588\u2588 @
456
+ \u2591\u2588\u2588\u2588 @
457
+ \u2591\u2591\u2588\u2588\u2588 \u2588\u2588\u2588@
458
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
459
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
460
+ @
461
+ @
462
+ @@
463
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
464
+ \u2591\u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2588\u2588\u2588 @
465
+ \u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588@
466
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
467
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
468
+ \u2591\u2588\u2588\u2588 \u2588\u2588\u2588 @
469
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
470
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
471
+ @
472
+ @
473
+ @@
474
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588@
475
+ \u2591\u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588@
476
+ \u2591\u2588\u2588\u2588 \u2588 \u2591 @
477
+ \u2591\u2588\u2588\u2588\u2588\u2588\u2588 @
478
+ \u2591\u2588\u2588\u2588\u2591\u2591\u2588 @
479
+ \u2591\u2588\u2588\u2588 \u2591 \u2588@
480
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588@
481
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
482
+ @
483
+ @
484
+ @@
485
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588@
486
+ \u2591\u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2588@
487
+ \u2591\u2588\u2588\u2588 \u2588 \u2591 @
488
+ \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
489
+ \u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2588 @
490
+ \u2591\u2588\u2588\u2588 \u2591 @
491
+ \u2588\u2588\u2588\u2588\u2588 @
492
+ \u2591\u2591\u2591\u2591\u2591 @
493
+ @
494
+ @
495
+ @@
496
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
497
+ \u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588@
498
+ \u2588\u2588\u2588 \u2591\u2591\u2591 @
499
+ \u2591\u2588\u2588\u2588 @
500
+ \u2591\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588@
501
+ \u2591\u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588 @
502
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
503
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
504
+ @
505
+ @
506
+ @@
507
+ \u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588@
508
+ \u2591\u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588 @
509
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
510
+ \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
511
+ \u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588 @
512
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
513
+ \u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588@
514
+ \u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591 @
515
+ @
516
+ @
517
+ @@
518
+ \u2588\u2588\u2588\u2588\u2588@
519
+ \u2591\u2591\u2588\u2588\u2588 @
520
+ \u2591\u2588\u2588\u2588 @
521
+ \u2591\u2588\u2588\u2588 @
522
+ \u2591\u2588\u2588\u2588 @
523
+ \u2591\u2588\u2588\u2588 @
524
+ \u2588\u2588\u2588\u2588\u2588@
525
+ \u2591\u2591\u2591\u2591\u2591 @
526
+ @
527
+ @
528
+ @@
529
+ \u2588\u2588\u2588\u2588\u2588@
530
+ \u2591\u2591\u2588\u2588\u2588 @
531
+ \u2591\u2588\u2588\u2588 @
532
+ \u2591\u2588\u2588\u2588 @
533
+ \u2591\u2588\u2588\u2588 @
534
+ \u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
535
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
536
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
537
+ @
538
+ @
539
+ @@
540
+ \u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588@
541
+ \u2591\u2591\u2588\u2588\u2588 \u2588\u2588\u2588\u2591 @
542
+ \u2591\u2588\u2588\u2588 \u2588\u2588\u2588 @
543
+ \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
544
+ \u2591\u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588 @
545
+ \u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588 @
546
+ \u2588\u2588\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588\u2588@
547
+ \u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591 @
548
+ @
549
+ @
550
+ @@
551
+ \u2588\u2588\u2588\u2588\u2588 @
552
+ \u2591\u2591\u2588\u2588\u2588 @
553
+ \u2591\u2588\u2588\u2588 @
554
+ \u2591\u2588\u2588\u2588 @
555
+ \u2591\u2588\u2588\u2588 @
556
+ \u2591\u2588\u2588\u2588 \u2588@
557
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588@
558
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
559
+ @
560
+ @
561
+ @@
562
+ \u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588@
563
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588 @
564
+ \u2591\u2588\u2588\u2588\u2591\u2588\u2588\u2588\u2588\u2588\u2591\u2588\u2588\u2588 @
565
+ \u2591\u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
566
+ \u2591\u2588\u2588\u2588 \u2591\u2591\u2591 \u2591\u2588\u2588\u2588 @
567
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
568
+ \u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588@
569
+ \u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591 @
570
+ @
571
+ @
572
+ @@
573
+ \u2588\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588@
574
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588 @
575
+ \u2591\u2588\u2588\u2588\u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
576
+ \u2591\u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588\u2591\u2588\u2588\u2588 @
577
+ \u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588 @
578
+ \u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588\u2588\u2588 @
579
+ \u2588\u2588\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588\u2588\u2588@
580
+ \u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591 @
581
+ @
582
+ @
583
+ @@
584
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
585
+ \u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588 @
586
+ \u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588@
587
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
588
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
589
+ \u2591\u2591\u2588\u2588\u2588 \u2588\u2588\u2588 @
590
+ \u2591\u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2591 @
591
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
592
+ @
593
+ @
594
+ @@
595
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
596
+ \u2591\u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588@
597
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
598
+ \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
599
+ \u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2591 @
600
+ \u2591\u2588\u2588\u2588 @
601
+ \u2588\u2588\u2588\u2588\u2588 @
602
+ \u2591\u2591\u2591\u2591\u2591 @
603
+ @
604
+ @
605
+ @@
606
+ \u2588\u2588\u2588\u2588\u2588\u2588 @
607
+ \u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2588\u2588\u2588 @
608
+ \u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588@
609
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
610
+ \u2591\u2588\u2588\u2588 \u2588\u2588\u2591\u2588\u2588\u2588@
611
+ \u2591\u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588\u2588 @
612
+ \u2591\u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2591\u2588\u2588@
613
+ \u2591\u2591\u2591\u2591\u2591\u2591 \u2591\u2591 @
614
+ @
615
+ @
616
+ @@
617
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
618
+ \u2591\u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588 @
619
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
620
+ \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
621
+ \u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588 @
622
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
623
+ \u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588@
624
+ \u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591 @
625
+ @
626
+ @
627
+ @@
628
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
629
+ \u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588@
630
+ \u2591\u2588\u2588\u2588 \u2591\u2591\u2591 @
631
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
632
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588@
633
+ \u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
634
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
635
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
636
+ @
637
+ @
638
+ @@
639
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588@
640
+ \u2591\u2588\u2591\u2591\u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2588@
641
+ \u2591 \u2591\u2588\u2588\u2588 \u2591 @
642
+ \u2591\u2588\u2588\u2588 @
643
+ \u2591\u2588\u2588\u2588 @
644
+ \u2591\u2588\u2588\u2588 @
645
+ \u2588\u2588\u2588\u2588\u2588 @
646
+ \u2591\u2591\u2591\u2591\u2591 @
647
+ @
648
+ @
649
+ @@
650
+ \u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588@
651
+ \u2591\u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588 @
652
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
653
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
654
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
655
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
656
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
657
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
658
+ @
659
+ @
660
+ @@
661
+ \u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588@
662
+ \u2591\u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588 @
663
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
664
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
665
+ \u2591\u2591\u2588\u2588\u2588 \u2588\u2588\u2588 @
666
+ \u2591\u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2591 @
667
+ \u2591\u2591\u2588\u2588\u2588 @
668
+ \u2591\u2591\u2591 @
669
+ @
670
+ @
671
+ @@
672
+ \u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588@
673
+ \u2591\u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588 @
674
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
675
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
676
+ \u2591\u2591\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588 @
677
+ \u2591\u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2591\u2588\u2588\u2588\u2588\u2588\u2591 @
678
+ \u2591\u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588 @
679
+ \u2591\u2591\u2591 \u2591\u2591\u2591 @
680
+ @
681
+ @
682
+ @@
683
+ \u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588@
684
+ \u2591\u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588 @
685
+ \u2591\u2591\u2588\u2588\u2588 \u2588\u2588\u2588 @
686
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588 @
687
+ \u2588\u2588\u2588\u2591\u2588\u2588\u2588 @
688
+ \u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588 @
689
+ \u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588@
690
+ \u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591 @
691
+ @
692
+ @
693
+ @@
694
+ \u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588@
695
+ \u2591\u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588 @
696
+ \u2591\u2591\u2588\u2588\u2588 \u2588\u2588\u2588 @
697
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588 @
698
+ \u2591\u2591\u2588\u2588\u2588 @
699
+ \u2591\u2588\u2588\u2588 @
700
+ \u2588\u2588\u2588\u2588\u2588 @
701
+ \u2591\u2591\u2591\u2591\u2591 @
702
+ @
703
+ @
704
+ @@
705
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588@
706
+ \u2591\u2588\u2591\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588 @
707
+ \u2591 \u2588\u2588\u2588\u2591 @
708
+ \u2588\u2588\u2588 @
709
+ \u2588\u2588\u2588 @
710
+ \u2588\u2588\u2588\u2588 \u2588@
711
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588@
712
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
713
+ @
714
+ @
715
+ @@
716
+ \u2588\u2588\u2588\u2588\u2588@
717
+ \u2591\u2588\u2588\u2588\u2591 @
718
+ \u2591\u2588\u2588\u2588 @
719
+ \u2591\u2588\u2588\u2588 @
720
+ \u2591\u2588\u2588\u2588 @
721
+ \u2591\u2588\u2588\u2588 @
722
+ \u2591\u2588\u2588\u2588\u2588\u2588@
723
+ \u2591\u2591\u2591\u2591\u2591 @
724
+ @
725
+ @
726
+ @@
727
+ \u2588\u2588\u2588 @
728
+ \u2591\u2591\u2588\u2588\u2588 @
729
+ \u2591\u2591\u2588\u2588\u2588 @
730
+ \u2591\u2591\u2588\u2588\u2588 @
731
+ \u2591\u2591\u2588\u2588\u2588 @
732
+ \u2591\u2591\u2588\u2588\u2588 @
733
+ \u2591\u2591\u2588\u2588\u2588@
734
+ \u2591\u2591\u2591 @
735
+ @
736
+ @
737
+ @@
738
+ \u2588\u2588\u2588\u2588\u2588@
739
+ \u2591\u2591\u2591\u2588\u2588\u2588@
740
+ \u2591\u2588\u2588\u2588@
741
+ \u2591\u2588\u2588\u2588@
742
+ \u2591\u2588\u2588\u2588@
743
+ \u2591\u2588\u2588\u2588@
744
+ \u2588\u2588\u2588\u2588\u2588@
745
+ \u2591\u2591\u2591\u2591\u2591 @
746
+ @
747
+ @
748
+ @@
749
+ \u2588\u2588 @
750
+ \u2588\u2588\u2588\u2588 @
751
+ \u2588\u2588\u2591\u2591\u2588\u2588@
752
+ \u2591\u2591 \u2591\u2591 @
753
+ @
754
+ @
755
+ @
756
+ @
757
+ @
758
+ @
759
+ @@
760
+ @
761
+ @
762
+ @
763
+ @
764
+ @
765
+ @
766
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588@
767
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
768
+ @
769
+ @
770
+ @@
771
+ \u2588\u2588 @
772
+ \u2591\u2588\u2588\u2588@
773
+ \u2591\u2591\u2591 @
774
+ @
775
+ @
776
+ @
777
+ @
778
+ @
779
+ @
780
+ @
781
+ @@
782
+ @
783
+ @
784
+ \u2588\u2588\u2588\u2588\u2588\u2588 @
785
+ \u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588 @
786
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
787
+ \u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588 @
788
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588@
789
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
790
+ @
791
+ @
792
+ @@
793
+ \u2588\u2588\u2588\u2588\u2588 @
794
+ \u2591\u2591\u2588\u2588\u2588 @
795
+ \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
796
+ \u2591\u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588@
797
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
798
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
799
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
800
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
801
+ @
802
+ @
803
+ @@
804
+ @
805
+ @
806
+ \u2588\u2588\u2588\u2588\u2588\u2588 @
807
+ \u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588@
808
+ \u2591\u2588\u2588\u2588 \u2591\u2591\u2591 @
809
+ \u2591\u2588\u2588\u2588 \u2588\u2588\u2588@
810
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588 @
811
+ \u2591\u2591\u2591\u2591\u2591\u2591 @
812
+ @
813
+ @
814
+ @@
815
+ \u2588\u2588\u2588\u2588\u2588@
816
+ \u2591\u2591\u2588\u2588\u2588 @
817
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
818
+ \u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588 @
819
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
820
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
821
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588@
822
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
823
+ @
824
+ @
825
+ @@
826
+ @
827
+ @
828
+ \u2588\u2588\u2588\u2588\u2588\u2588 @
829
+ \u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588@
830
+ \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
831
+ \u2591\u2588\u2588\u2588\u2591\u2591\u2591 @
832
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588 @
833
+ \u2591\u2591\u2591\u2591\u2591\u2591 @
834
+ @
835
+ @
836
+ @@
837
+ \u2588\u2588\u2588\u2588\u2588\u2588 @
838
+ \u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588@
839
+ \u2591\u2588\u2588\u2588 \u2591\u2591\u2591 @
840
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
841
+ \u2591\u2591\u2591\u2588\u2588\u2588\u2591 @
842
+ \u2591\u2588\u2588\u2588 @
843
+ \u2588\u2588\u2588\u2588\u2588 @
844
+ \u2591\u2591\u2591\u2591\u2591 @
845
+ @
846
+ @
847
+ @@
848
+ @
849
+ @
850
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588@
851
+ \u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588@
852
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
853
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
854
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588@
855
+ \u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588@
856
+ \u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
857
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588 @
858
+ \u2591\u2591\u2591\u2591\u2591\u2591 @@
859
+ \u2588\u2588\u2588\u2588\u2588 @
860
+ \u2591\u2591\u2588\u2588\u2588 @
861
+ \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
862
+ \u2591\u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588 @
863
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
864
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
865
+ \u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588@
866
+ \u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591 @
867
+ @
868
+ @
869
+ @@
870
+ \u2588\u2588\u2588 @
871
+ \u2591\u2591\u2591 @
872
+ \u2588\u2588\u2588\u2588 @
873
+ \u2591\u2591\u2588\u2588\u2588 @
874
+ \u2591\u2588\u2588\u2588 @
875
+ \u2591\u2588\u2588\u2588 @
876
+ \u2588\u2588\u2588\u2588\u2588@
877
+ \u2591\u2591\u2591\u2591\u2591 @
878
+ @
879
+ @
880
+ @@
881
+ \u2588\u2588\u2588 @
882
+ \u2591\u2591\u2591 @
883
+ \u2588\u2588\u2588\u2588\u2588@
884
+ \u2591\u2591\u2588\u2588\u2588 @
885
+ \u2591\u2588\u2588\u2588 @
886
+ \u2591\u2588\u2588\u2588 @
887
+ \u2591\u2588\u2588\u2588 @
888
+ \u2591\u2588\u2588\u2588 @
889
+ \u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
890
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588 @
891
+ \u2591\u2591\u2591\u2591\u2591\u2591 @@
892
+ \u2588\u2588\u2588\u2588\u2588 @
893
+ \u2591\u2591\u2588\u2588\u2588 @
894
+ \u2591\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588@
895
+ \u2591\u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588 @
896
+ \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2591 @
897
+ \u2591\u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588 @
898
+ \u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588@
899
+ \u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591 @
900
+ @
901
+ @
902
+ @@
903
+ \u2588\u2588\u2588\u2588 @
904
+ \u2591\u2591\u2588\u2588\u2588 @
905
+ \u2591\u2588\u2588\u2588 @
906
+ \u2591\u2588\u2588\u2588 @
907
+ \u2591\u2588\u2588\u2588 @
908
+ \u2591\u2588\u2588\u2588 @
909
+ \u2588\u2588\u2588\u2588\u2588@
910
+ \u2591\u2591\u2591\u2591\u2591 @
911
+ @
912
+ @
913
+ @@
914
+ @
915
+ @
916
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
917
+ \u2591\u2591\u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588 @
918
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
919
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
920
+ \u2588\u2588\u2588\u2588\u2588\u2591\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588@
921
+ \u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591 @
922
+ @
923
+ @
924
+ @@
925
+ @
926
+ @
927
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
928
+ \u2591\u2591\u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588 @
929
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
930
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
931
+ \u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588@
932
+ \u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591 @
933
+ @
934
+ @
935
+ @@
936
+ @
937
+ @
938
+ \u2588\u2588\u2588\u2588\u2588\u2588 @
939
+ \u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588@
940
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
941
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
942
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588 @
943
+ \u2591\u2591\u2591\u2591\u2591\u2591 @
944
+ @
945
+ @
946
+ @@
947
+ @
948
+ @
949
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
950
+ \u2591\u2591\u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588@
951
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
952
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
953
+ \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
954
+ \u2591\u2588\u2588\u2588\u2591\u2591\u2591 @
955
+ \u2591\u2588\u2588\u2588 @
956
+ \u2588\u2588\u2588\u2588\u2588 @
957
+ \u2591\u2591\u2591\u2591\u2591 @@
958
+ @
959
+ @
960
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588@
961
+ \u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588 @
962
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
963
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
964
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
965
+ \u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588 @
966
+ \u2591\u2588\u2588\u2588 @
967
+ \u2588\u2588\u2588\u2588\u2588@
968
+ \u2591\u2591\u2591\u2591\u2591 @@
969
+ @
970
+ @
971
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
972
+ \u2591\u2591\u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588@
973
+ \u2591\u2588\u2588\u2588 \u2591\u2591\u2591 @
974
+ \u2591\u2588\u2588\u2588 @
975
+ \u2588\u2588\u2588\u2588\u2588 @
976
+ \u2591\u2591\u2591\u2591\u2591 @
977
+ @
978
+ @
979
+ @@
980
+ @
981
+ @
982
+ \u2588\u2588\u2588\u2588\u2588 @
983
+ \u2588\u2588\u2588\u2591\u2591 @
984
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588 @
985
+ \u2591\u2591\u2591\u2591\u2588\u2588\u2588@
986
+ \u2588\u2588\u2588\u2588\u2588\u2588 @
987
+ \u2591\u2591\u2591\u2591\u2591\u2591 @
988
+ @
989
+ @
990
+ @@
991
+ \u2588\u2588\u2588\u2588\u2588 @
992
+ \u2591\u2591\u2588\u2588\u2588 @
993
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
994
+ \u2591\u2591\u2591\u2588\u2588\u2588\u2591 @
995
+ \u2591\u2588\u2588\u2588 @
996
+ \u2591\u2588\u2588\u2588 \u2588\u2588\u2588@
997
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588 @
998
+ \u2591\u2591\u2591\u2591\u2591 @
999
+ @
1000
+ @
1001
+ @@
1002
+ @
1003
+ @
1004
+ \u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588@
1005
+ \u2591\u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
1006
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
1007
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
1008
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588@
1009
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
1010
+ @
1011
+ @
1012
+ @@
1013
+ @
1014
+ @
1015
+ \u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588@
1016
+ \u2591\u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588 @
1017
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
1018
+ \u2591\u2591\u2588\u2588\u2588 \u2588\u2588\u2588 @
1019
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588 @
1020
+ \u2591\u2591\u2591\u2591\u2591 @
1021
+ @
1022
+ @
1023
+ @@
1024
+ @
1025
+ @
1026
+ \u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588@
1027
+ \u2591\u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588 @
1028
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
1029
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
1030
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2591\u2588\u2588\u2588\u2588 @
1031
+ \u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591 @
1032
+ @
1033
+ @
1034
+ @@
1035
+ @
1036
+ @
1037
+ \u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588@
1038
+ \u2591\u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588 @
1039
+ \u2591\u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2591 @
1040
+ \u2588\u2588\u2588\u2591\u2591\u2591\u2588\u2588\u2588 @
1041
+ \u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588@
1042
+ \u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591 @
1043
+ @
1044
+ @
1045
+ @@
1046
+ @
1047
+ @
1048
+ \u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588@
1049
+ \u2591\u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
1050
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
1051
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
1052
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
1053
+ \u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588 @
1054
+ \u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
1055
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588 @
1056
+ \u2591\u2591\u2591\u2591\u2591\u2591 @@
1057
+ @
1058
+ @
1059
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588@
1060
+ \u2591\u2588\u2591\u2591\u2591\u2591\u2588\u2588\u2588 @
1061
+ \u2591 \u2588\u2588\u2588\u2591 @
1062
+ \u2588\u2588\u2588\u2591 \u2588@
1063
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588@
1064
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
1065
+ @
1066
+ @
1067
+ @@
1068
+ \u2588\u2588\u2588@
1069
+ \u2588\u2588\u2591 @
1070
+ \u2588\u2588 @
1071
+ \u2588\u2588\u2588 @
1072
+ \u2591\u2591\u2591\u2588\u2588 @
1073
+ \u2591\u2591\u2588\u2588 @
1074
+ \u2591\u2591\u2588\u2588\u2588@
1075
+ \u2591\u2591\u2591 @
1076
+ @
1077
+ @
1078
+ @@
1079
+ \u2588\u2588\u2588@
1080
+ \u2591\u2588\u2588\u2588@
1081
+ \u2591\u2588\u2588\u2588@
1082
+ \u2591\u2588\u2588\u2588@
1083
+ \u2591\u2588\u2588\u2588@
1084
+ \u2591\u2588\u2588\u2588@
1085
+ \u2591\u2588\u2588\u2588@
1086
+ \u2591\u2591\u2591 @
1087
+ @
1088
+ @
1089
+ @@
1090
+ \u2588\u2588\u2588 @
1091
+ \u2591\u2591\u2591\u2588\u2588 @
1092
+ \u2591\u2591\u2588\u2588 @
1093
+ \u2591\u2591\u2588\u2588\u2588@
1094
+ \u2588\u2588\u2591 @
1095
+ \u2588\u2588 @
1096
+ \u2588\u2588\u2588 @
1097
+ \u2591\u2591\u2591 @
1098
+ @
1099
+ @
1100
+ @@
1101
+ @
1102
+ \u2588\u2588\u2588 \u2588\u2588\u2588@
1103
+ \u2588\u2588\u2588\u2591\u2588\u2588\u2588\u2591 @
1104
+ \u2591\u2591\u2591 \u2591\u2591\u2591 @
1105
+ @
1106
+ @
1107
+ @
1108
+ @
1109
+ @
1110
+ @
1111
+ @@
1112
+ \u2588\u2588\u2588 \u2588\u2588\u2588 @
1113
+ \u2591\u2591\u2591 \u2591\u2591\u2591 @
1114
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
1115
+ \u2588\u2588\u2588\u2591\u2591\u2591\u2588\u2588\u2588 @
1116
+ \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
1117
+ \u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2588\u2588\u2588 @
1118
+ \u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588@
1119
+ \u2591\u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591 @
1120
+ @
1121
+ @
1122
+ @@
1123
+ \u2588\u2588\u2588 \u2588\u2588\u2588 @
1124
+ \u2591\u2591\u2591 \u2591\u2591\u2591 @
1125
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
1126
+ \u2588\u2588\u2588\u2591\u2591\u2591\u2588\u2588\u2588@
1127
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
1128
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
1129
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
1130
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
1131
+ @
1132
+ @
1133
+ @@
1134
+ \u2588\u2588\u2588 \u2588\u2588\u2588 @
1135
+ \u2591\u2591\u2591 \u2591\u2591\u2591 @
1136
+ \u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588@
1137
+ \u2591\u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588 @
1138
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
1139
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
1140
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
1141
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
1142
+ @
1143
+ @
1144
+ @@
1145
+ \u2588\u2588\u2588 \u2588\u2588\u2588 @
1146
+ \u2591\u2591\u2591 \u2591\u2591\u2591 @
1147
+ \u2588\u2588\u2588\u2588\u2588\u2588 @
1148
+ \u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588 @
1149
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
1150
+ \u2588\u2588\u2588\u2591\u2591\u2588\u2588\u2588 @
1151
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588@
1152
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
1153
+ @
1154
+ @
1155
+ @@
1156
+ \u2588\u2588\u2588 \u2588\u2588\u2588 @
1157
+ \u2591\u2591\u2591 \u2591\u2591\u2591 @
1158
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
1159
+ \u2588\u2588\u2588\u2591\u2591\u2591\u2588\u2588\u2588@
1160
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
1161
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
1162
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
1163
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
1164
+ @
1165
+ @
1166
+ @@
1167
+ \u2588\u2588\u2588 \u2588\u2588\u2588 @
1168
+ \u2591\u2591\u2591 \u2591\u2591\u2591 @
1169
+ \u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588@
1170
+ \u2591\u2591\u2588\u2588\u2588 \u2591\u2591\u2588\u2588\u2588 @
1171
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
1172
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588 @
1173
+ \u2591\u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588@
1174
+ \u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591\u2591 @
1175
+ @
1176
+ @
1177
+ @@
1178
+ \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
1179
+ \u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588@
1180
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
1181
+ \u2591\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588 @
1182
+ \u2591\u2588\u2588\u2588\u2591\u2591\u2591\u2591\u2591\u2588\u2588\u2588@
1183
+ \u2591\u2588\u2588\u2588 \u2591\u2588\u2588\u2588@
1184
+ \u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588 @
1185
+ \u2591\u2591\u2591\u2591 \u2591\u2591\u2591\u2591\u2591\u2591 @
1186
+ @
1187
+ @
1188
+ @@
1189
+ `;
1190
+ }
1191
+ });
1192
+
1193
+ // src/ascii/fonts.ts
1194
+ var init_fonts = __esm({
1195
+ "src/ascii/fonts.ts"() {
1196
+ init_dosrebel_data();
1197
+ }
1198
+ });
1199
+
1200
+ // src/ascii/figlet.ts
1201
+ function parseFigletFont(raw) {
1202
+ const lines = raw.split("\n");
1203
+ if (lines[0]?.charCodeAt(0) === 65279) {
1204
+ lines[0] = lines[0].slice(1);
1205
+ }
1206
+ const header = lines[0];
1207
+ if (!header?.startsWith("flf2a")) {
1208
+ throw new Error("Invalid FIGlet font: missing flf2a header");
1209
+ }
1210
+ const hardblank = header[5] ?? "$";
1211
+ const parts = header.slice(6).trim().split(/\s+/);
1212
+ const height = Number.parseInt(parts[0] ?? "", 10);
1213
+ const baseline = Number.parseInt(parts[1] ?? "", 10);
1214
+ const commentLines = Number.parseInt(parts[4] ?? "", 10);
1215
+ if (!Number.isFinite(height) || height <= 0) {
1216
+ throw new Error("Invalid FIGlet font: missing character height");
1217
+ }
1218
+ const dataStart = 1 + (Number.isFinite(commentLines) ? commentLines : 0);
1219
+ const chars = /* @__PURE__ */ new Map();
1220
+ let lineIndex = dataStart;
1221
+ let ascii = 32;
1222
+ while (lineIndex + height <= lines.length && ascii <= 126) {
1223
+ const charLines = [];
1224
+ for (let row = 0; row < height; row++) {
1225
+ const line = (lines[lineIndex + row] ?? "").replace(/@+$/, "").replaceAll(hardblank, " ");
1226
+ charLines.push(line);
1227
+ }
1228
+ chars.set(ascii, charLines);
1229
+ lineIndex += height;
1230
+ ascii++;
1231
+ }
1232
+ return { height, baseline, hardblank, chars };
1233
+ }
1234
+ var init_figlet = __esm({
1235
+ "src/ascii/figlet.ts"() {
1236
+ }
1237
+ });
1238
+
1239
+ // src/dos-rebel-font.ts
1240
+ var dos_rebel_font_exports = {};
1241
+ __export(dos_rebel_font_exports, {
1242
+ renderDosRebel: () => renderDosRebel
1243
+ });
1244
+ async function renderDosRebel(text) {
1245
+ const cached = renderCache.get(text);
1246
+ if (cached) return cached;
1247
+ const font = parseFigletFont(dosrebelFont);
1248
+ const layout = composeAsciiText(font, text);
1249
+ const output = Array.from({ length: layout.rows }, () => "");
1250
+ const cellByPosition = new Map(layout.cells.map((cell) => [`${cell.row}:${cell.col}`, cell.ch]));
1251
+ for (let row = 0; row < layout.rows; row++) {
1252
+ let line = "";
1253
+ for (let col = 0; col < layout.cols; col++) {
1254
+ line += cellByPosition.get(`${row}:${col}`) ?? " ";
1255
+ }
1256
+ output[row] = line.replace(/\s+$/g, "");
1257
+ }
1258
+ renderCache.set(text, output);
1259
+ return output;
1260
+ }
1261
+ var renderCache;
1262
+ var init_dos_rebel_font = __esm({
1263
+ "src/dos-rebel-font.ts"() {
1264
+ init_compose();
1265
+ init_fonts();
1266
+ init_figlet();
1267
+ renderCache = /* @__PURE__ */ new Map();
1268
+ }
1269
+ });
1270
+
1271
+ // src/dev-banner.ts
1272
+ var RESET = "\x1B[0m";
1273
+ var DEFAULT_HEX = "#22D3EE";
1274
+ var WHITE_HEX = "#ffffff";
1275
+ function hexToAnsi24(hex) {
1276
+ const normalized = hex.trim().replace(/^#/, "");
1277
+ if (!/^[0-9a-fA-F]{6}$/.test(normalized)) {
1278
+ return null;
1279
+ }
1280
+ const r = parseInt(normalized.slice(0, 2), 16);
1281
+ const g = parseInt(normalized.slice(2, 4), 16);
1282
+ const b = parseInt(normalized.slice(4, 6), 16);
1283
+ return `\x1B[38;2;${r};${g};${b}m`;
1284
+ }
1285
+ function visibleLen(value) {
1286
+ return value.length;
1287
+ }
1288
+ function normalizeSegments(input) {
1289
+ if (typeof input === "string") {
1290
+ return { segments: [{ text: input, colorHex: WHITE_HEX }] };
1291
+ }
1292
+ if ("segments" in input) {
1293
+ const normalize = (segments2) => segments2.filter((segment) => segment.text.trim().length > 0).map((segment) => ({
1294
+ text: segment.text,
1295
+ colorHex: segment.colorHex ?? WHITE_HEX
1296
+ }));
1297
+ const segments = normalize(input.segments);
1298
+ const compactSegments = input.compactSegments && input.compactSegments.length > 0 ? normalize(input.compactSegments) : void 0;
1299
+ return { segments, compactSegments };
1300
+ }
1301
+ const suffix = input.suffix ?? "";
1302
+ if (!suffix) {
1303
+ return {
1304
+ segments: [{ text: input.baseText, colorHex: input.colorHex ?? DEFAULT_HEX }]
1305
+ };
1306
+ }
1307
+ return {
1308
+ segments: [
1309
+ { text: input.baseText, colorHex: input.baseColorHex ?? WHITE_HEX },
1310
+ { text: suffix, colorHex: input.colorHex ?? DEFAULT_HEX }
1311
+ ]
1312
+ };
1313
+ }
1314
+ async function renderSegmentedFiglet(segments) {
1315
+ const { renderDosRebel: renderDosRebel2 } = await Promise.resolve().then(() => (init_dos_rebel_font(), dos_rebel_font_exports));
1316
+ const cumulativeTexts = [];
1317
+ let textSoFar = "";
1318
+ for (const segment of segments) {
1319
+ textSoFar += segment.text;
1320
+ cumulativeTexts.push(textSoFar);
1321
+ }
1322
+ const renderedByBoundary = await Promise.all(
1323
+ cumulativeTexts.map((text) => renderDosRebel2(text))
1324
+ );
1325
+ const lines = renderedByBoundary[renderedByBoundary.length - 1] ?? [];
1326
+ const boundaryLines = renderedByBoundary.slice(0, -1);
1327
+ const ansiBySegment = segments.map(
1328
+ (segment) => hexToAnsi24(segment.colorHex ?? WHITE_HEX) ?? "\x1B[97m"
1329
+ );
1330
+ const widestLine = lines.reduce((max, line) => Math.max(max, visibleLen(line)), 0);
1331
+ return { lines, boundaryLines, ansiBySegment, widestLine };
1332
+ }
1333
+ function printColoredFiglet(lines, boundaryLines, ansiBySegment) {
1334
+ for (let i = 0; i < lines.length; i++) {
1335
+ const full = lines[i] ?? "";
1336
+ let cursor = 0;
1337
+ let out = "";
1338
+ for (let segmentIndex = 0; segmentIndex < ansiBySegment.length; segmentIndex += 1) {
1339
+ const boundaryLine = segmentIndex < boundaryLines.length ? boundaryLines[segmentIndex]?.[i] ?? "" : full;
1340
+ const end = Math.min(boundaryLine.length, full.length);
1341
+ const chunk = full.slice(cursor, end);
1342
+ out += `${ansiBySegment[segmentIndex]}${chunk}`;
1343
+ cursor = end;
1344
+ }
1345
+ process.stdout.write(`${out}${RESET}
1346
+ `);
1347
+ }
1348
+ }
1349
+ async function printBanner(input) {
1350
+ const normalized = Array.isArray(input) ? { segments: input, compactSegments: void 0 } : normalizeSegments(input);
1351
+ const segments = normalized.segments;
1352
+ const compactSegments = normalized.compactSegments;
1353
+ if (!segments.length) return;
1354
+ process.stdout.write(`${RESET}
1355
+ `);
1356
+ const terminalColumns = process.stdout.columns ?? 0;
1357
+ const primary = await renderSegmentedFiglet(segments);
1358
+ if (terminalColumns === 0 || primary.widestLine <= terminalColumns) {
1359
+ printColoredFiglet(primary.lines, primary.boundaryLines, primary.ansiBySegment);
1360
+ return;
1361
+ }
1362
+ if (compactSegments && compactSegments.length > 0) {
1363
+ const compactFiglet = await renderSegmentedFiglet(compactSegments);
1364
+ if (compactFiglet.widestLine <= terminalColumns) {
1365
+ printColoredFiglet(
1366
+ compactFiglet.lines,
1367
+ compactFiglet.boundaryLines,
1368
+ compactFiglet.ansiBySegment
1369
+ );
1370
+ return;
1371
+ }
1372
+ }
1373
+ let plain = "";
1374
+ for (let i = 0; i < segments.length; i++) {
1375
+ const text = segments[i]?.text ?? "";
1376
+ if (!text) continue;
1377
+ plain += `${primary.ansiBySegment[i]}${text}`;
1378
+ }
1379
+ process.stdout.write(`${plain}${RESET}
1380
+ `);
1381
+ }
1382
+ function createTsupBannerHook(project) {
1383
+ let shown = false;
1384
+ const normalized = normalizeSegments(project);
1385
+ return async () => {
1386
+ if (shown) return;
1387
+ shown = true;
1388
+ await printBanner(normalized);
1389
+ };
1390
+ }
1391
+ function createDevBannerPlugin(project) {
1392
+ let shown = false;
1393
+ const { segments, compactSegments } = normalizeSegments(project);
1394
+ const bannerText = segments.map((segment) => segment.text).join("");
1395
+ return {
1396
+ name: `olwiba-dev-banner-${bannerText.toLowerCase()}`,
1397
+ apply: "serve",
1398
+ configureServer(_server) {
1399
+ if (shown) return;
1400
+ shown = true;
1401
+ void printBanner({ segments, compactSegments });
1402
+ }
1403
+ };
1404
+ }
1405
+
1406
+ // src/project-brand.ts
1407
+ function resolveProjectBannerSegments(segments, accentHex) {
1408
+ return segments.map((segment) => ({
1409
+ text: segment.text,
1410
+ colorHex: segment.accent ? accentHex : segment.colorHex
1411
+ }));
1412
+ }
1413
+ function getProjectBanner(project) {
1414
+ return {
1415
+ segments: resolveProjectBannerSegments(project.banner.segments, project.brandAccent.hex),
1416
+ compactSegments: project.banner.compactSegments ? resolveProjectBannerSegments(project.banner.compactSegments, project.brandAccent.hex) : void 0
1417
+ };
1418
+ }
1419
+ function createProjectDevBannerPlugin(project) {
1420
+ return createDevBannerPlugin(getProjectBanner(project));
1421
+ }
1422
+ function createProjectTsupBannerHook(project) {
1423
+ return createTsupBannerHook(getProjectBanner(project));
1424
+ }
1425
+
1426
+ export { createDevBannerPlugin, createProjectDevBannerPlugin, createProjectTsupBannerHook, createTsupBannerHook, printBanner };
1427
+ //# sourceMappingURL=index.js.map
1428
+ //# sourceMappingURL=index.js.map