egedit: do not save cursor movement in undo -- this is my stupid habit, and it comple...
[iv.d.git] / glgfx0.d
blob51c8661e7aa81ae6875d7e72229234a88a794b4a
1 /* coded by Ketmar // Invisible Vector <ketmar@ketmar.no-ip.org>
2 * Understanding is not required. Only obedience.
4 * This program is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation, version 3 of the License ONLY.
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
16 module iv.glgfx0 /*is aliced*/;
18 import arsd.simpledisplay : SimpleWindow;
19 import iv.alice;
20 import iv.cmdcongl;
21 import iv.glbinds;
24 // ////////////////////////////////////////////////////////////////////////// //
25 // 0:b; 1:g; 2:r; 3: nothing
26 __gshared int vbufW = 256, vbufH = 192; // 128
27 __gshared uint[] vbuf; // ABGR
28 __gshared bool blit2x = true;
29 enum BlitType { Normal, BlackWhite, Green, Red }
30 __gshared int blitType = BlitType.Normal;
31 __gshared int blitShine = 0; // adds this to non-black colors
32 private __gshared uint[] vbimg; // RGBA
33 __gshared SimpleWindow vbwin;
34 private __gshared uint vbTexId = 0;
37 // ////////////////////////////////////////////////////////////////////////// //
38 void glgfxDeinit () {
39 import arsd.simpledisplay;
40 flushGui();
41 if (vbwin !is null) { if (!vbwin.closed) vbwin.close(); delete vbwin; flushGui(); }
42 if (vbimg !is null) delete vbimg;
43 if (vbuf !is null) delete vbuf;
44 vbimg = null;
45 vbwin = null;
46 vbuf = null;
50 SimpleWindow glgfxInitWindow (string title) {
51 import arsd.simpledisplay;
53 if (vbufW < 1 || vbufH < 1 || vbufW > 4096 || vbufH > 4096) assert(0, "invalid dimensions");
55 vbuf.length = vbufW*vbufH;
56 vbuf[] = 0;
57 vbimg.length = vbufW*vbufH;
58 vbimg[] = 0xff000000;
59 vbimg[] = 0xffffffff;
61 vbwin = new SimpleWindow(vbufW*(blit2x ? 2 : 1), vbufH*(blit2x ? 2 : 1), title, OpenGlOptions.yes, Resizablity.fixedSize);
63 vbwin.redrawOpenGlScene = delegate () {
64 glgfxBlit();
65 glconDraw();
68 vbwin.visibleForTheFirstTime = delegate () {
69 vbwin.setAsCurrentOpenGlContext();
70 glgfxInitTexture();
71 glconInit(vbufW, vbufH, (blit2x ? 2: 1));
72 vbwin.redrawOpenGlScene();
74 return vbwin;
78 void glgfxBlit () {
79 if (vbwin is null || vbwin.closed || vbTexId == 0) return;
82 auto sp = cast(const(ubyte)*)vbuf.ptr;
83 auto dp = cast(ubyte*)vbimg.ptr;
84 foreach (immutable _; 0..vbufW*vbufH) {
85 dp[0] = sp[2];
86 dp[1] = sp[1];
87 dp[2] = sp[0];
88 dp[3] = 0xff;
89 sp += 4;
90 dp += 4;
94 GLint glmatmode;
95 GLint gltextbinding;
96 GLint oldprg;
97 GLint oldfbr, oldfbw;
98 GLint[4] glviewport;
99 glGetIntegerv(GL_MATRIX_MODE, &glmatmode);
100 glGetIntegerv(GL_TEXTURE_BINDING_2D, &gltextbinding);
101 glGetIntegerv(GL_VIEWPORT, glviewport.ptr);
102 glGetIntegerv(GL_CURRENT_PROGRAM, &oldprg);
103 glGetIntegerv(GL_READ_FRAMEBUFFER_BINDING, &oldfbr);
104 glGetIntegerv(GL_DRAW_FRAMEBUFFER_BINDING, &oldfbw);
105 glMatrixMode(GL_PROJECTION); glPushMatrix();
106 glMatrixMode(GL_MODELVIEW); glPushMatrix();
107 glMatrixMode(GL_TEXTURE); glPushMatrix();
108 glMatrixMode(GL_COLOR); glPushMatrix();
109 glPushAttrib(/*GL_ENABLE_BIT|GL_COLOR_BUFFER_BIT|GL_CURRENT_BIT*/GL_ALL_ATTRIB_BITS); // let's play safe
110 // restore on exit
111 scope(exit) {
112 glPopAttrib(/*GL_ENABLE_BIT*/);
113 glMatrixMode(GL_PROJECTION); glPopMatrix();
114 glMatrixMode(GL_MODELVIEW); glPopMatrix();
115 glMatrixMode(GL_TEXTURE); glPopMatrix();
116 glMatrixMode(GL_COLOR); glPopMatrix();
117 glMatrixMode(glmatmode);
118 glBindFramebufferEXT(GL_READ_FRAMEBUFFER_EXT, oldfbr);
119 glBindFramebufferEXT(GL_DRAW_FRAMEBUFFER_EXT, oldfbw);
120 glBindTexture(GL_TEXTURE_2D, gltextbinding);
121 glUseProgram(oldprg);
122 glViewport(glviewport.ptr[0], glviewport.ptr[1], glviewport.ptr[2], glviewport.ptr[3]);
125 glTextureSubImage2D(vbTexId, 0, 0/*x*/, 0/*y*/, vbufW, vbufH, GL_RGBA, GL_UNSIGNED_BYTE, vbimg.ptr);
127 enum x = 0;
128 enum y = 0;
129 immutable w = vbufW;
130 immutable h = vbufH;
132 glBindTexture(GL_TEXTURE_CUBE_MAP, 0);
133 glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, 0);
134 glUseProgram(0);
136 glMatrixMode(GL_PROJECTION); // for ortho camera
137 glLoadIdentity();
138 // left, right, bottom, top, near, far
139 glOrtho(0, w, h, 0, -1, 1); // top-to-bottom
140 glViewport(0, 0, w, h);
141 glMatrixMode(GL_MODELVIEW);
142 glLoadIdentity();
144 glEnable(GL_TEXTURE_2D);
145 glDisable(GL_LIGHTING);
146 glDisable(GL_DITHER);
147 //glDisable(GL_BLEND);
148 glDisable(GL_DEPTH_TEST);
149 //glEnable(GL_BLEND);
150 //glBlendFunc(GL_SRC_ALPHA, GL_ONE);
151 //glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
152 glDisable(GL_BLEND);
153 glDisable(GL_STENCIL_TEST);
155 glColor4f(1, 1, 1, 1);
156 glBindTexture(GL_TEXTURE_2D, vbTexId);
157 //scope(exit) glBindTexture(GL_TEXTURE_2D, 0);
158 glBegin(GL_QUADS);
159 glTexCoord2f(0.0f, 0.0f); glVertex2i(x, y); // top-left
160 glTexCoord2f(1.0f, 0.0f); glVertex2i(w, y); // top-right
161 glTexCoord2f(1.0f, 1.0f); glVertex2i(w, h); // bottom-right
162 glTexCoord2f(0.0f, 1.0f); glVertex2i(x, h); // bottom-left
163 glEnd();
167 private void glgfxInitTexture () {
168 if (vbTexId) { glDeleteTextures(1, &vbTexId); vbTexId = 0; }
170 enum wrapOpt = GL_REPEAT;
171 enum filterOpt = GL_NEAREST; //GL_LINEAR;
172 enum ttype = GL_UNSIGNED_BYTE;
174 glGenTextures(1, &vbTexId);
175 if (vbTexId == 0) assert(0, "can't create cmdcon texture");
177 GLint gltextbinding;
178 glGetIntegerv(GL_TEXTURE_BINDING_2D, &gltextbinding);
179 scope(exit) glBindTexture(GL_TEXTURE_2D, gltextbinding);
181 glBindTexture(GL_TEXTURE_2D, vbTexId);
182 glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, wrapOpt);
183 glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, wrapOpt);
184 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, filterOpt);
185 glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, filterOpt);
186 //glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE);
187 //glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
189 GLfloat[4] bclr = 0.0;
190 glTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_BORDER_COLOR, bclr.ptr);
191 glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, vbufW, vbufH, 0, GL_RGBA, GL_UNSIGNED_BYTE, vbimg.ptr);
195 // ////////////////////////////////////////////////////////////////////////// //
196 ubyte clampToByte(T) (T n) @safe pure nothrow @nogc
197 if (__traits(isIntegral, T) && (T.sizeof == 2 || T.sizeof == 4))
199 static if (__VERSION__ > 2067) pragma(inline, true);
200 n &= -cast(int)(n >= 0);
201 return cast(ubyte)(n|((255-cast(int)n)>>31));
204 ubyte clampToByte(T) (T n) @safe pure nothrow @nogc
205 if (__traits(isIntegral, T) && T.sizeof == 1)
207 static if (__VERSION__ > 2067) pragma(inline, true);
208 return cast(ubyte)n;
212 // ////////////////////////////////////////////////////////////////////////// //
213 alias VColor = uint;
215 /// vlRGBA struct to ease color components extraction/replacing
216 align(1) struct vlRGBA {
217 align(1):
218 ubyte b, g, r, a;
220 static assert(vlRGBA.sizeof == VColor.sizeof);
223 enum : VColor {
224 vlAMask = 0xff000000u,
225 vlRMask = 0x00ff0000u,
226 vlGMask = 0x0000ff00u,
227 vlBMask = 0x000000ffu
230 enum : VColor {
231 vlAShift = 24,
232 vlRShift = 16,
233 vlGShift = 8,
234 vlBShift = 0
238 enum VColor Transparent = vlAMask; /// completely transparent pixel color
241 bool isTransparent(T : VColor) (T col) @safe pure nothrow @nogc {
242 static if (__VERSION__ > 2067) pragma(inline, true);
243 return ((col&vlAMask) == vlAMask);
246 bool isOpaque(T : VColor) (T col) @safe pure nothrow @nogc {
247 static if (__VERSION__ > 2067) pragma(inline, true);
248 return ((col&vlAMask) == 0);
251 // a=0: opaque
252 VColor rgbcol(TR, TG, TB, TA=ubyte) (TR r, TG g, TB b, TA a=0) @safe pure nothrow @nogc
253 if (__traits(isIntegral, TR) && __traits(isIntegral, TG) && __traits(isIntegral, TB) && __traits(isIntegral, TA)) {
254 static if (__VERSION__ > 2067) pragma(inline, true);
255 return
256 (clampToByte(a)<<vlAShift)|
257 (clampToByte(r)<<vlRShift)|
258 (clampToByte(g)<<vlGShift)|
259 (clampToByte(b)<<vlBShift);
262 alias rgbacol = rgbcol;
265 // generate some templates
266 private enum genRGBGetSet(string cname) =
267 "ubyte rgb"~cname~"() (VColor clr) @safe pure nothrow @nogc {\n"~
268 " static if (__VERSION__ > 2067) pragma(inline, true);\n"~
269 " return ((clr>>vl"~cname[0]~"Shift)&0xff);\n"~
270 "}\n"~
271 "VColor rgbSet"~cname~"(T) (VColor clr, T v) @safe pure nothrow @nogc if (__traits(isIntegral, T)) {\n"~
272 " static if (__VERSION__ > 2067) pragma(inline, true);\n"~
273 " return (clr&~vl"~cname[0]~"Mask)|(clampToByte(v)<<vl"~cname[0]~"Shift);\n"~
274 "}\n";
276 mixin(genRGBGetSet!"Alpha");
277 mixin(genRGBGetSet!"Red");
278 mixin(genRGBGetSet!"Green");
279 mixin(genRGBGetSet!"Blue");
282 // ////////////////////////////////////////////////////////////////////////// //
283 void putPixel(TX, TY) (TX x, TY y, VColor col) @trusted
284 if (__traits(isIntegral, TX) && __traits(isIntegral, TY))
286 static if (__VERSION__ > 2067) pragma(inline, true);
287 immutable long xx = cast(long)x;
288 immutable long yy = cast(long)y;
289 if ((col&vlAMask) != vlAMask && xx >= 0 && yy >= 0 && xx < vbufW && yy < vbufH) {
290 uint* da = vbuf.ptr+yy*vbufW+xx;
291 if (col&vlAMask) {
292 immutable uint a = 256-(col>>24); // to not loose bits
293 immutable uint dc = (*da)&0xffffff;
294 immutable uint srb = (col&0xff00ff);
295 immutable uint sg = (col&0x00ff00);
296 immutable uint drb = (dc&0xff00ff);
297 immutable uint dg = (dc&0x00ff00);
298 immutable uint orb = (drb+(((srb-drb)*a+0x800080)>>8))&0xff00ff;
299 immutable uint og = (dg+(((sg-dg)*a+0x008000)>>8))&0x00ff00;
300 *da = orb|og;
301 } else {
302 *da = col;
307 void setPixel(TX, TY) (TX x, TY y, VColor col) @trusted
308 if (__traits(isIntegral, TX) && __traits(isIntegral, TY))
310 static if (__VERSION__ > 2067) pragma(inline, true);
311 immutable long xx = cast(long)x;
312 immutable long yy = cast(long)y;
313 if (xx >= 0 && yy >= 0 && xx < vbufW && yy < vbufH) {
314 uint* da = vbuf.ptr+yy*vbufW+xx;
315 *da = col;
320 // ////////////////////////////////////////////////////////////////////////// //
321 void clear (VColor col) @trusted {
322 vbuf.ptr[0..vbufW*vbufH] = col;
326 // ////////////////////////////////////////////////////////////////////////// //
327 void drawRect (int x, int y, int w, int h, immutable VColor col) {
328 if (w < 1 || h < 1) return;
329 if (x <= -w || y <= -h || x >= vbufW || y >= vbufH || isTransparent(col)) return;
330 if (x < 0) { w += x; x = 0; }
331 if (y < 0) { h += y; h = 0; }
332 if (x+w >= vbufW) w = vbufW-x;
333 if (y+h >= vbufH) h = vbufH-y;
334 assert(x >= 0 && y >= 0 && x < vbufW && y < vbufH && w > 0 && h > 0 && x+w <= vbufW && y+h <= vbufH);
335 if (isOpaque(col)) {
336 uint d = y*vbufW+x;
337 vbuf[d..d+w] = col;
338 d += vbufW;
339 foreach (immutable yy; y+1..y+h-1) {
340 vbuf[d] = col;
341 vbuf[d+w-1] = col;
342 d += vbufW;
344 if (h > 1) vbuf[d..d+w] = col;
345 } else {
346 foreach (immutable yy; y..y+h) {
347 putPixel(x, yy, col);
348 putPixel(x+w-1, yy, col);
350 foreach (immutable xx; x+1..x+w-1) {
351 putPixel(xx, y, col);
352 if (h > 1) putPixel(xx, y+h-1, col);
357 void fillRect (int x, int y, int w, int h, immutable VColor col) {
358 if (w < 1 || h < 1) return;
359 if (x <= -w || y <= -h || x >= vbufW || y >= vbufH || isTransparent(col)) return;
360 if (x < 0) { w += x; x = 0; }
361 if (y < 0) { h += y; h = 0; }
362 if (x+w >= vbufW) w = vbufW-x;
363 if (y+h >= vbufH) h = vbufH-y;
364 assert(x >= 0 && y >= 0 && x < vbufW && y < vbufH && w > 0 && h > 0 && x+w <= vbufW && y+h <= vbufH);
365 if (isOpaque(col)) {
366 uint d = y*vbufW+x;
367 foreach (immutable yy; y..y+h) {
368 vbuf[d..d+w] = col;
369 d += vbufW;
371 } else {
372 foreach (immutable yy; y..y+h) {
373 foreach (immutable xx; x..x+w) {
374 putPixel(xx, yy, col);
380 void hline (int x, int y, int len, immutable VColor col) { drawRect(x, y, len, 1, col); }
381 void vline (int x, int y, int len, immutable VColor col) { drawRect(x, y, 1, len, col); }
384 // ////////////////////////////////////////////////////////////////////////// //
385 void drawLine(bool lastPoint=true) (int x0, int y0, int x1, int y1, immutable VColor col) {
386 enum swap(string a, string b) = "{int tmp_="~a~";"~a~"="~b~";"~b~"=tmp_;}";
388 if ((col&vlAMask) == vlAMask) return;
390 if (x0 == x1 && y0 == y1) {
391 static if (lastPoint) putPixel(x0, y0, col);
392 return;
395 // clip rectange
396 int wx0 = 0, wy0 = 0, wx1 = vbufW-1, wy1 = vbufH-1;
397 // other vars
398 int stx, sty; // "steps" for x and y axes
399 int dsx, dsy; // "lengthes" for x and y axes
400 int dx2, dy2; // "double lengthes" for x and y axes
401 int xd, yd; // current coord
402 int e; // "error" (as in bresenham algo)
403 int rem;
404 int term;
405 int *d0, d1;
406 // horizontal setup
407 if (x0 < x1) {
408 // from left to right
409 if (x0 > wx1 || x1 < wx0) return; // out of screen
410 stx = 1; // going right
411 } else {
412 // from right to left
413 if (x1 > wx1 || x0 < wx0) return; // out of screen
414 stx = -1; // going left
415 x0 = -x0;
416 x1 = -x1;
417 wx0 = -wx0;
418 wx1 = -wx1;
419 mixin(swap!("wx0", "wx1"));
421 // vertical setup
422 if (y0 < y1) {
423 // from top to bottom
424 if (y0 > wy1 || y1 < wy0) return; // out of screen
425 sty = 1; // going down
426 } else {
427 // from bottom to top
428 if (y1 > wy1 || y0 < wy0) return; // out of screen
429 sty = -1; // going up
430 y0 = -y0;
431 y1 = -y1;
432 wy0 = -wy0;
433 wy1 = -wy1;
434 mixin(swap!("wy0", "wy1"));
436 dsx = x1-x0;
437 dsy = y1-y0;
438 if (dsx < dsy) {
439 d0 = &yd;
440 d1 = &xd;
441 mixin(swap!("x0", "y0"));
442 mixin(swap!("x1", "y1"));
443 mixin(swap!("dsx", "dsy"));
444 mixin(swap!("wx0", "wy0"));
445 mixin(swap!("wx1", "wy1"));
446 mixin(swap!("stx", "sty"));
447 } else {
448 d0 = &xd;
449 d1 = &yd;
451 dx2 = 2*dsx;
452 dy2 = 2*dsy;
453 xd = x0;
454 yd = y0;
455 e = 2*dsy-dsx;
456 term = x1;
457 bool xfixed = false;
458 if (y0 < wy0) {
459 // clip at top
460 int temp = dx2*(wy0-y0)-dsx;
461 xd += temp/dy2;
462 rem = temp%dy2;
463 if (xd > wx1) return; // x is moved out of clipping rect, nothing to do
464 if (xd+1 >= wx0) {
465 yd = wy0;
466 e -= rem+dsx;
467 if (rem > 0) { ++xd; e += dy2; }
468 xfixed = true;
471 if (!xfixed && x0 < wx0) {
472 // clip at left
473 int temp = dy2*(wx0-x0);
474 yd += temp/dx2;
475 rem = temp%dx2;
476 if (yd > wy1 || yd == wy1 && rem >= dsx) return;
477 xd = wx0;
478 e += rem;
479 if (rem >= dsx) { ++yd; e -= dx2; }
481 if (y1 > wy1) {
482 // clip at bottom
483 int temp = dx2*(wy1-y0)+dsx;
484 term = x0+temp/dy2;
485 rem = temp%dy2;
486 if (rem == 0) --term;
488 if (term > wx1) term = wx1; // clip at right
489 static if (lastPoint) {
490 // draw last point
491 ++term;
492 } else {
493 if (term == xd) return; // this is the only point, get out of here
495 if (sty == -1) yd = -yd;
496 if (stx == -1) { xd = -xd; term = -term; }
497 dx2 -= dy2;
498 // draw it; `putPixel()` can omit checks
499 while (xd != term) {
500 // inlined `putPixel(*d0, *d1, col)`
501 // this can be made even faster by precalculating `da` and making
502 // separate code branches for mixing and non-mixing drawing, but...
503 // ah, screw it!
504 uint* da = vbuf.ptr+(*d1)*vbufW+(*d0);
505 if (col&vlAMask) {
506 immutable uint a = 256-(col>>24); // to not loose bits
507 immutable uint dc = (*da)&0xffffff;
508 immutable uint srb = (col&0xff00ff);
509 immutable uint sg = (col&0x00ff00);
510 immutable uint drb = (dc&0xff00ff);
511 immutable uint dg = (dc&0x00ff00);
512 immutable uint orb = (drb+(((srb-drb)*a+0x800080)>>8))&0xff00ff;
513 immutable uint og = (dg+(((sg-dg)*a+0x008000)>>8))&0x00ff00;
514 *da = orb|og;
515 } else {
516 *da = col;
518 // done drawing, move coords
519 if (e >= 0) {
520 yd += sty;
521 e -= dx2;
522 } else {
523 e += dy2;
525 xd += stx;
530 // ////////////////////////////////////////////////////////////////////////// //
531 private void plot4points() (int cx, int cy, int x, int y, VColor clr) @trusted {
532 putPixel(cx+x, cy+y, clr);
533 if (x != 0) putPixel(cx-x, cy+y, clr);
534 if (y != 0) putPixel(cx+x, cy-y, clr);
535 putPixel(cx-x, cy-y, clr);
539 void drawCircle (int cx, int cy, int radius, VColor clr) @trusted {
540 if (radius > 0 && !isTransparent(clr)) {
541 int error = -radius, x = radius, y = 0;
542 if (radius == 1) { putPixel(cx, cy, clr); return; }
543 while (x > y) {
544 plot4points(cx, cy, x, y, clr);
545 plot4points(cx, cy, y, x, clr);
546 error += y*2+1;
547 ++y;
548 if (error >= 0) { --x; error -= x*2; }
550 plot4points(cx, cy, x, y, clr);
554 void fillCircle (int cx, int cy, int radius, VColor clr) @trusted {
555 if (radius > 0 && !isTransparent(clr)) {
556 int error = -radius, x = radius, y = 0;
557 if (radius == 1) { putPixel(cx, cy, clr); return; }
558 while (x >= y) {
559 int last_y = y;
560 error += y;
561 ++y;
562 error += y;
563 hline(cx-x, cy+last_y, 2*x+1, clr);
564 if (x != 0 && last_y != 0) hline(cx-x, cy-last_y, 2*x+1, clr);
565 if (error >= 0) {
566 if (x != last_y) {
567 hline(cx-last_y, cy+x, 2*last_y+1, clr);
568 if (last_y != 0 && x != 0) hline(cx-last_y, cy-x, 2*last_y+1, clr);
570 error -= x;
571 --x;
572 error -= x;
579 void drawEllipse (int x0, int y0, int w, int h, VColor clr) @trusted {
580 import std.math : abs;
581 if (w == 0 && h == 0) return;
582 if (w == 1) { vline(x0, y0, h, clr); return; }
583 if (h == 1) { hline(x0, y0, w, clr); return; }
584 int x1 = x0+w-1;
585 int y1 = y0+h-1;
586 int a = abs(x1-x0), b = abs(y1-y0), b1 = b&1; // values of diameter
587 long dx = 4*(1-a)*b*b, dy = 4*(b1+1)*a*a; // error increment
588 long err = dx+dy+b1*a*a; // error of 1.step
589 if (x0 > x1) { x0 = x1; x1 += a; } // if called with swapped points...
590 if (y0 > y1) y0 = y1; // ...exchange them
591 y0 += (b+1)/2; y1 = y0-b1; // starting pixel
592 a *= 8*a; b1 = 8*b*b;
593 do {
594 long e2;
595 putPixel(x1, y0, clr); // I. Quadrant
596 putPixel(x0, y0, clr); // II. Quadrant
597 putPixel(x0, y1, clr); // III. Quadrant
598 putPixel(x1, y1, clr); // IV. Quadrant
599 e2 = 2*err;
600 if (e2 >= dx) { ++x0; --x1; err += dx += b1; } // x step
601 if (e2 <= dy) { ++y0; --y1; err += dy += a; } // y step
602 } while (x0 <= x1);
603 while (y0-y1 < b) {
604 // too early stop of flat ellipses a=1
605 putPixel(x0-1, ++y0, clr); // complete tip of ellipse
606 putPixel(x0-1, --y1, clr);
610 void fillEllipse (int x0, int y0, int w, int h, VColor clr) @trusted {
611 import std.math : abs;
612 if (w == 0 && h == 0) return;
613 if (w == 1) { vline(x0, y0, h, clr); return; }
614 if (h == 1) { hline(x0, y0, w, clr); return; }
615 int x1 = x0+w-1;
616 int y1 = y0+h-1;
617 int a = abs(x1-x0), b = abs(y1-y0), b1 = b&1; // values of diameter
618 long dx = 4*(1-a)*b*b, dy = 4*(b1+1)*a*a; // error increment
619 long err = dx+dy+b1*a*a; // error of 1.step
620 int prev_y0 = -1, prev_y1 = -1;
621 if (x0 > x1) { x0 = x1; x1 += a; } // if called with swapped points...
622 if (y0 > y1) y0 = y1; // ...exchange them
623 y0 += (b+1)/2; y1 = y0-b1; // starting pixel
624 a *= 8*a; b1 = 8*b*b;
625 do {
626 long e2;
627 if (y0 != prev_y0) { hline(x0, y0, x1-x0+1, clr); prev_y0 = y0; }
628 if (y1 != y0 && y1 != prev_y1) { hline(x0, y1, x1-x0+1, clr); prev_y1 = y1; }
629 e2 = 2*err;
630 if (e2 >= dx) { ++x0; --x1; err += dx += b1; } // x step
631 if (e2 <= dy) { ++y0; --y1; err += dy += a; } // y step
632 } while (x0 <= x1);
633 while (y0-y1 < b) {
634 // too early stop of flat ellipses a=1
635 putPixel(x0-1, ++y0, clr); // complete tip of ellipse
636 putPixel(x0-1, --y1, clr);
641 // //////////////////////////////////////////////////////////////////////// //
642 int charWidth(string type="msx") () {
643 static if (type == "msx") return 6;
644 else static if (type == "dos") return 8;
645 else static if (type == "d10") return 10;
646 else static assert(0, "invalid font type");
649 int charHeight(string type="msx") () {
650 static if (type == "msx") return 8;
651 else static if (type == "dos") return 8;
652 else static if (type == "d10") return 10;
653 else static assert(0, "invalid font type");
656 void drawCharWdt(string type="msx") (int x, int y, int wdt, int shift, char ch, VColor fgcol, VColor bgcol=Transparent) @trusted {
657 static if (type == "msx") { alias fontb8 = vlFont6; enum fwdt = 8; enum fhgt = 8; enum fmask = 0x80; }
658 else static if (type == "dos") { alias fontb8 = dosFont8; enum fwdt = 8; enum fhgt = 8; enum fmask = 0x80; }
659 else static if (type == "d10") { alias fontb8 = dosFont10; enum fwdt = 10; enum fhgt = 10; enum fmask = 0x8000; }
660 else static assert(0, "invalid font type");
661 usize pos = ch*fhgt;
662 if (wdt < 1 || shift >= fwdt) return;
663 if (fgcol == Transparent && bgcol == Transparent) return;
664 if (wdt > fwdt) wdt = fwdt;
665 if (shift < 0) shift = 0;
666 foreach (immutable int dy; 0..fhgt) {
667 ushort b = cast(ushort)(fontb8[pos++]<<shift);
668 foreach (immutable int dx; 0..wdt) {
669 VColor c = (b&fmask ? fgcol : bgcol);
670 if (!isTransparent(c)) putPixel(x+dx, y+dy, c);
671 b <<= 1;
676 // outline types
677 enum : ubyte {
678 OutLeft = 0x01,
679 OutRight = 0x02,
680 OutUp = 0x04,
681 OutDown = 0x08,
682 OutLU = 0x10, // left-up
683 OutRU = 0x20, // right-up
684 OutLD = 0x40, // left-down
685 OutRD = 0x80, // right-down
686 OutAll = 0xff,
689 void drawCharWdtOut(string type="msx") (int x, int y, int wdt, int shift, char ch, VColor fgcol, VColor outcol=Transparent, ubyte ot=0) @trusted {
690 static if (type == "msx") { alias fontb8 = vlFont6; enum fwdt = 8; enum fhgt = 8; enum fmask = 0x80; }
691 else static if (type == "dos") { alias fontb8 = dosFont8; enum fwdt = 8; enum fhgt = 8; enum fmask = 0x80; }
692 else static if (type == "d10") { alias fontb8 = dosFont10; enum fwdt = 10; enum fhgt = 10; enum fmask = 0x8000; }
693 else static assert(0, "invalid font type");
694 if (fgcol == Transparent && outcol == Transparent) return;
695 if (ot == 0 || outcol == Transparent) {
696 // no outline? simple draw
697 drawCharWdt(x, y, wdt, shift, ch, fgcol, Transparent);
698 return;
700 usize pos = ch*fhgt;
701 if (wdt < 1 || shift >= fwdt) return;
702 if (wdt > 8) wdt = fwdt;
703 if (shift < 0) shift = 0;
704 ubyte[fhgt+2][fwdt+2] bmp = 0; // char bitmap; 0: empty; 1: char; 2: outline
705 foreach (immutable dy; 1..fhgt+1) {
706 ushort b = cast(ushort)(fontb8[pos++]<<shift);
707 foreach (immutable dx; 1..wdt+1) {
708 if (b&fmask) {
709 // put pixel
710 bmp[dy][dx] = 1;
711 // put outlines
712 if ((ot&OutUp) && bmp[dy-1][dx] == 0) bmp[dy-1][dx] = 2;
713 if ((ot&OutDown) && bmp[dy+1][dx] == 0) bmp[dy+1][dx] = 2;
714 if ((ot&OutLeft) && bmp[dy][dx-1] == 0) bmp[dy][dx-1] = 2;
715 if ((ot&OutRight) && bmp[dy][dx+1] == 0) bmp[dy][dx+1] = 2;
716 if ((ot&OutLU) && bmp[dy-1][dx-1] == 0) bmp[dy-1][dx-1] = 2;
717 if ((ot&OutRU) && bmp[dy-1][dx+1] == 0) bmp[dy-1][dx+1] = 2;
718 if ((ot&OutLD) && bmp[dy+1][dx-1] == 0) bmp[dy+1][dx-1] = 2;
719 if ((ot&OutRD) && bmp[dy+1][dx+1] == 0) bmp[dy+1][dx+1] = 2;
721 b <<= 1;
724 // now draw it
725 --x;
726 --y;
727 foreach (immutable int dy; 0..fhgt+2) {
728 foreach (immutable int dx; 0..fwdt+2) {
729 if (auto t = bmp[dy][dx]) putPixel(x+dx, y+dy, (t == 1 ? fgcol : outcol));
734 void drawChar(string type="msx") (int x, int y, char ch, VColor fgcol, VColor bgcol=Transparent) @trusted {
735 drawCharWdt!type(x, y, charWidth!type, 0, ch, fgcol, bgcol);
738 void drawCharOut(string type="msx") (int x, int y, char ch, VColor fgcol, VColor outcol=Transparent, ubyte ot=OutAll) @trusted {
739 drawCharWdtOut!type(x, y, charWidth!type, 0, ch, fgcol, outcol, ot);
742 void drawStr(string type="msx") (int x, int y, const(char)[] str, VColor fgcol, VColor bgcol=Transparent) @trusted {
743 foreach (immutable char ch; str) {
744 drawChar!type(x, y, ch, fgcol, bgcol);
745 x += charWidth!type;
749 void drawStrOut(string type="msx") (int x, int y, const(char)[] str, VColor fgcol, VColor outcol=Transparent, ubyte ot=OutAll) @trusted {
750 foreach (immutable char ch; str) {
751 drawCharOut!type(x, y, ch, fgcol, outcol, ot);
752 x += charWidth!type;
756 int strWidth(string type="msx") (const(char)[] str) {
757 return cast(int)str.length*charWidth!type;
760 int charWidthProp(string type="msx") (char ch) @trusted pure {
761 static if (type == "msx") { alias fontw8 = vlFontPropWidth; }
762 else static if (type == "dos") { alias fontw8 = dosFontPropWidth; }
763 else static assert(0, "invalid font type");
764 return (fontw8.ptr[ch]&0x0f);
767 int strWidthProp(string type="msx") (const(char)[] str) @trusted pure {
768 static if (type == "msx") { alias fontw8 = vlFontPropWidth; }
769 else static if (type == "dos") { alias fontw8 = dosFontPropWidth; }
770 else static assert(0, "invalid font type");
771 int wdt = 0;
772 foreach (immutable char ch; str) wdt += (fontw8[ch]&0x0f)+1;
773 if (wdt > 0) --wdt; // don't count last empty pixel
774 return wdt;
777 int drawCharProp(string type="msx") (int x, int y, char ch, VColor fgcol, VColor bgcol=Transparent) @trusted {
778 static if (type == "msx") { alias fontw8 = vlFontPropWidth; }
779 else static if (type == "dos") { alias fontw8 = dosFontPropWidth; }
780 else static assert(0, "invalid font type");
781 immutable int wdt = (fontw8[ch]&0x0f);
782 drawCharWdt!type(x, y, wdt, fontw8[ch]>>4, ch, fgcol, bgcol);
783 return wdt;
786 int drawCharPropOut(string type="msx") (int x, int y, char ch, VColor fgcol, VColor outcol=Transparent, ubyte ot=OutAll) @trusted {
787 static if (type == "msx") { alias fontw8 = vlFontPropWidth; }
788 else static if (type == "dos") { alias fontw8 = dosFontPropWidth; }
789 else static assert(0, "invalid font type");
790 immutable int wdt = (fontw8[ch]&0x0f);
791 drawCharWdtOut!type(x, y, wdt, fontw8[ch]>>4, ch, fgcol, outcol, ot);
792 return wdt;
795 int drawStrProp(string type="msx") (int x, int y, const(char)[] str, VColor fgcol, VColor bgcol=Transparent) @trusted {
796 bool vline = false;
797 int sx = x;
798 foreach (immutable char ch; str) {
799 if (vline) {
800 if (!isTransparent(bgcol)) foreach (int dy; 0..8) putPixel(x, y+dy, bgcol);
801 ++x;
803 vline = true;
804 x += drawCharProp!type(x, y, ch, fgcol, bgcol);
806 return x-sx;
809 int drawStrPropOut(string type="msx") (int x, int y, const(char)[] str, VColor fgcol, VColor outcol=Transparent, ubyte ot=OutAll) @trusted {
810 int sx = x;
811 foreach (immutable char ch; str) {
812 x += drawCharPropOut!type(x, y, ch, fgcol, outcol, ot)+1;
814 if (x > sx) --x; // don't count last empty pixel
815 return x-sx;
819 // ////////////////////////////////////////////////////////////////////////// //
820 public static immutable ubyte[256*8] vlFont6 = [
821 /* 0 */
822 0b_00000000,
823 0b_00000000,
824 0b_00000000,
825 0b_00000000,
826 0b_00000000,
827 0b_00000000,
828 0b_00000000,
829 0b_00000000,
830 /* 1 */
831 0b_00111100,
832 0b_01000010,
833 0b_10100101,
834 0b_10000001,
835 0b_10100101,
836 0b_10011001,
837 0b_01000010,
838 0b_00111100,
839 /* 2 */
840 0b_00111100,
841 0b_01111110,
842 0b_11011011,
843 0b_11111111,
844 0b_11111111,
845 0b_11011011,
846 0b_01100110,
847 0b_00111100,
848 /* 3 */
849 0b_01101100,
850 0b_11111110,
851 0b_11111110,
852 0b_11111110,
853 0b_01111100,
854 0b_00111000,
855 0b_00010000,
856 0b_00000000,
857 /* 4 */
858 0b_00010000,
859 0b_00111000,
860 0b_01111100,
861 0b_11111110,
862 0b_01111100,
863 0b_00111000,
864 0b_00010000,
865 0b_00000000,
866 /* 5 */
867 0b_00010000,
868 0b_00111000,
869 0b_01010100,
870 0b_11111110,
871 0b_01010100,
872 0b_00010000,
873 0b_00111000,
874 0b_00000000,
875 /* 6 */
876 0b_00010000,
877 0b_00111000,
878 0b_01111100,
879 0b_11111110,
880 0b_11111110,
881 0b_00010000,
882 0b_00111000,
883 0b_00000000,
884 /* 7 */
885 0b_00000000,
886 0b_00000000,
887 0b_00000000,
888 0b_00110000,
889 0b_00110000,
890 0b_00000000,
891 0b_00000000,
892 0b_00000000,
893 /* 8 */
894 0b_11111111,
895 0b_11111111,
896 0b_11111111,
897 0b_11100111,
898 0b_11100111,
899 0b_11111111,
900 0b_11111111,
901 0b_11111111,
902 /* 9 */
903 0b_00111000,
904 0b_01000100,
905 0b_10000010,
906 0b_10000010,
907 0b_10000010,
908 0b_01000100,
909 0b_00111000,
910 0b_00000000,
911 /* 10 */
912 0b_11000111,
913 0b_10111011,
914 0b_01111101,
915 0b_01111101,
916 0b_01111101,
917 0b_10111011,
918 0b_11000111,
919 0b_11111111,
920 /* 11 */
921 0b_00001111,
922 0b_00000011,
923 0b_00000101,
924 0b_01111001,
925 0b_10001000,
926 0b_10001000,
927 0b_10001000,
928 0b_01110000,
929 /* 12 */
930 0b_00111000,
931 0b_01000100,
932 0b_01000100,
933 0b_01000100,
934 0b_00111000,
935 0b_00010000,
936 0b_01111100,
937 0b_00010000,
938 /* 13 */
939 0b_00110000,
940 0b_00101000,
941 0b_00100100,
942 0b_00100100,
943 0b_00101000,
944 0b_00100000,
945 0b_11100000,
946 0b_11000000,
947 /* 14 */
948 0b_00111100,
949 0b_00100100,
950 0b_00111100,
951 0b_00100100,
952 0b_00100100,
953 0b_11100100,
954 0b_11011100,
955 0b_00011000,
956 /* 15 */
957 0b_00010000,
958 0b_01010100,
959 0b_00111000,
960 0b_11101110,
961 0b_00111000,
962 0b_01010100,
963 0b_00010000,
964 0b_00000000,
965 /* 16 */
966 0b_00010000,
967 0b_00010000,
968 0b_00010000,
969 0b_01111100,
970 0b_00010000,
971 0b_00010000,
972 0b_00010000,
973 0b_00010000,
974 /* 17 */
975 0b_00010000,
976 0b_00010000,
977 0b_00010000,
978 0b_11111111,
979 0b_00000000,
980 0b_00000000,
981 0b_00000000,
982 0b_00000000,
983 /* 18 */
984 0b_00000000,
985 0b_00000000,
986 0b_00000000,
987 0b_11111111,
988 0b_00010000,
989 0b_00010000,
990 0b_00010000,
991 0b_00010000,
992 /* 19 */
993 0b_00010000,
994 0b_00010000,
995 0b_00010000,
996 0b_11110000,
997 0b_00010000,
998 0b_00010000,
999 0b_00010000,
1000 0b_00010000,
1001 /* 20 */
1002 0b_00010000,
1003 0b_00010000,
1004 0b_00010000,
1005 0b_00011111,
1006 0b_00010000,
1007 0b_00010000,
1008 0b_00010000,
1009 0b_00010000,
1010 /* 21 */
1011 0b_00010000,
1012 0b_00010000,
1013 0b_00010000,
1014 0b_11111111,
1015 0b_00010000,
1016 0b_00010000,
1017 0b_00010000,
1018 0b_00010000,
1019 /* 22 */
1020 0b_00010000,
1021 0b_00010000,
1022 0b_00010000,
1023 0b_00010000,
1024 0b_00010000,
1025 0b_00010000,
1026 0b_00010000,
1027 0b_00010000,
1028 /* 23 */
1029 0b_00000000,
1030 0b_00000000,
1031 0b_00000000,
1032 0b_11111111,
1033 0b_00000000,
1034 0b_00000000,
1035 0b_00000000,
1036 0b_00000000,
1037 /* 24 */
1038 0b_00000000,
1039 0b_00000000,
1040 0b_00000000,
1041 0b_00011111,
1042 0b_00010000,
1043 0b_00010000,
1044 0b_00010000,
1045 0b_00010000,
1046 /* 25 */
1047 0b_00000000,
1048 0b_00000000,
1049 0b_00000000,
1050 0b_11110000,
1051 0b_00010000,
1052 0b_00010000,
1053 0b_00010000,
1054 0b_00010000,
1055 /* 26 */
1056 0b_00010000,
1057 0b_00010000,
1058 0b_00010000,
1059 0b_00011111,
1060 0b_00000000,
1061 0b_00000000,
1062 0b_00000000,
1063 0b_00000000,
1064 /* 27 */
1065 0b_00010000,
1066 0b_00010000,
1067 0b_00010000,
1068 0b_11110000,
1069 0b_00000000,
1070 0b_00000000,
1071 0b_00000000,
1072 0b_00000000,
1073 /* 28 */
1074 0b_10000001,
1075 0b_01000010,
1076 0b_00100100,
1077 0b_00011000,
1078 0b_00011000,
1079 0b_00100100,
1080 0b_01000010,
1081 0b_10000001,
1082 /* 29 */
1083 0b_00000001,
1084 0b_00000010,
1085 0b_00000100,
1086 0b_00001000,
1087 0b_00010000,
1088 0b_00100000,
1089 0b_01000000,
1090 0b_10000000,
1091 /* 30 */
1092 0b_10000000,
1093 0b_01000000,
1094 0b_00100000,
1095 0b_00010000,
1096 0b_00001000,
1097 0b_00000100,
1098 0b_00000010,
1099 0b_00000001,
1100 /* 31 */
1101 0b_00000000,
1102 0b_00010000,
1103 0b_00010000,
1104 0b_11111111,
1105 0b_00010000,
1106 0b_00010000,
1107 0b_00000000,
1108 0b_00000000,
1109 /* 32 ' ' */
1110 0b_00000000,
1111 0b_00000000,
1112 0b_00000000,
1113 0b_00000000,
1114 0b_00000000,
1115 0b_00000000,
1116 0b_00000000,
1117 0b_00000000,
1118 /* 33 '!' */
1119 0b_00100000,
1120 0b_00100000,
1121 0b_00100000,
1122 0b_00100000,
1123 0b_00000000,
1124 0b_00000000,
1125 0b_00100000,
1126 0b_00000000,
1127 /* 34 '"' */
1128 0b_01010000,
1129 0b_01010000,
1130 0b_01010000,
1131 0b_00000000,
1132 0b_00000000,
1133 0b_00000000,
1134 0b_00000000,
1135 0b_00000000,
1136 /* 35 '#' */
1137 0b_01010000,
1138 0b_01010000,
1139 0b_11111000,
1140 0b_01010000,
1141 0b_11111000,
1142 0b_01010000,
1143 0b_01010000,
1144 0b_00000000,
1145 /* 36 '$' */
1146 0b_00100000,
1147 0b_01111000,
1148 0b_10100000,
1149 0b_01110000,
1150 0b_00101000,
1151 0b_11110000,
1152 0b_00100000,
1153 0b_00000000,
1154 /* 37 '%' */
1155 0b_11000000,
1156 0b_11001000,
1157 0b_00010000,
1158 0b_00100000,
1159 0b_01000000,
1160 0b_10011000,
1161 0b_00011000,
1162 0b_00000000,
1163 /* 38 '&' */
1164 0b_01000000,
1165 0b_10100000,
1166 0b_01000000,
1167 0b_10101000,
1168 0b_10010000,
1169 0b_10011000,
1170 0b_01100000,
1171 0b_00000000,
1172 /* 39 ''' */
1173 0b_00010000,
1174 0b_00100000,
1175 0b_01000000,
1176 0b_00000000,
1177 0b_00000000,
1178 0b_00000000,
1179 0b_00000000,
1180 0b_00000000,
1181 /* 40 '(' */
1182 0b_00010000,
1183 0b_00100000,
1184 0b_01000000,
1185 0b_01000000,
1186 0b_01000000,
1187 0b_00100000,
1188 0b_00010000,
1189 0b_00000000,
1190 /* 41 ')' */
1191 0b_01000000,
1192 0b_00100000,
1193 0b_00010000,
1194 0b_00010000,
1195 0b_00010000,
1196 0b_00100000,
1197 0b_01000000,
1198 0b_00000000,
1199 /* 42 '*' */
1200 0b_10001000,
1201 0b_01010000,
1202 0b_00100000,
1203 0b_11111000,
1204 0b_00100000,
1205 0b_01010000,
1206 0b_10001000,
1207 0b_00000000,
1208 /* 43 '+' */
1209 0b_00000000,
1210 0b_00100000,
1211 0b_00100000,
1212 0b_11111000,
1213 0b_00100000,
1214 0b_00100000,
1215 0b_00000000,
1216 0b_00000000,
1217 /* 44 ',' */
1218 0b_00000000,
1219 0b_00000000,
1220 0b_00000000,
1221 0b_00000000,
1222 0b_00000000,
1223 0b_00100000,
1224 0b_00100000,
1225 0b_01000000,
1226 /* 45 '-' */
1227 0b_00000000,
1228 0b_00000000,
1229 0b_00000000,
1230 0b_01111000,
1231 0b_00000000,
1232 0b_00000000,
1233 0b_00000000,
1234 0b_00000000,
1235 /* 46 '.' */
1236 0b_00000000,
1237 0b_00000000,
1238 0b_00000000,
1239 0b_00000000,
1240 0b_00000000,
1241 0b_01100000,
1242 0b_01100000,
1243 0b_00000000,
1244 /* 47 '/' */
1245 0b_00000000,
1246 0b_00000000,
1247 0b_00001000,
1248 0b_00010000,
1249 0b_00100000,
1250 0b_01000000,
1251 0b_10000000,
1252 0b_00000000,
1253 /* 48 '0' */
1254 0b_01110000,
1255 0b_10001000,
1256 0b_10011000,
1257 0b_10101000,
1258 0b_11001000,
1259 0b_10001000,
1260 0b_01110000,
1261 0b_00000000,
1262 /* 49 '1' */
1263 0b_00100000,
1264 0b_01100000,
1265 0b_10100000,
1266 0b_00100000,
1267 0b_00100000,
1268 0b_00100000,
1269 0b_11111000,
1270 0b_00000000,
1271 /* 50 '2' */
1272 0b_01110000,
1273 0b_10001000,
1274 0b_00001000,
1275 0b_00010000,
1276 0b_01100000,
1277 0b_10000000,
1278 0b_11111000,
1279 0b_00000000,
1280 /* 51 '3' */
1281 0b_01110000,
1282 0b_10001000,
1283 0b_00001000,
1284 0b_00110000,
1285 0b_00001000,
1286 0b_10001000,
1287 0b_01110000,
1288 0b_00000000,
1289 /* 52 '4' */
1290 0b_00010000,
1291 0b_00110000,
1292 0b_01010000,
1293 0b_10010000,
1294 0b_11111000,
1295 0b_00010000,
1296 0b_00010000,
1297 0b_00000000,
1298 /* 53 '5' */
1299 0b_11111000,
1300 0b_10000000,
1301 0b_11100000,
1302 0b_00010000,
1303 0b_00001000,
1304 0b_00010000,
1305 0b_11100000,
1306 0b_00000000,
1307 /* 54 '6' */
1308 0b_00110000,
1309 0b_01000000,
1310 0b_10000000,
1311 0b_11110000,
1312 0b_10001000,
1313 0b_10001000,
1314 0b_01110000,
1315 0b_00000000,
1316 /* 55 '7' */
1317 0b_11111000,
1318 0b_10001000,
1319 0b_00010000,
1320 0b_00100000,
1321 0b_00100000,
1322 0b_00100000,
1323 0b_00100000,
1324 0b_00000000,
1325 /* 56 '8' */
1326 0b_01110000,
1327 0b_10001000,
1328 0b_10001000,
1329 0b_01110000,
1330 0b_10001000,
1331 0b_10001000,
1332 0b_01110000,
1333 0b_00000000,
1334 /* 57 '9' */
1335 0b_01110000,
1336 0b_10001000,
1337 0b_10001000,
1338 0b_01111000,
1339 0b_00001000,
1340 0b_00010000,
1341 0b_01100000,
1342 0b_00000000,
1343 /* 58 ':' */
1344 0b_00000000,
1345 0b_00000000,
1346 0b_00100000,
1347 0b_00000000,
1348 0b_00000000,
1349 0b_00100000,
1350 0b_00000000,
1351 0b_00000000,
1352 /* 59 ';' */
1353 0b_00000000,
1354 0b_00000000,
1355 0b_00100000,
1356 0b_00000000,
1357 0b_00000000,
1358 0b_00100000,
1359 0b_00100000,
1360 0b_01000000,
1361 /* 60 '<' */
1362 0b_00011000,
1363 0b_00110000,
1364 0b_01100000,
1365 0b_11000000,
1366 0b_01100000,
1367 0b_00110000,
1368 0b_00011000,
1369 0b_00000000,
1370 /* 61 '=' */
1371 0b_00000000,
1372 0b_00000000,
1373 0b_11111000,
1374 0b_00000000,
1375 0b_11111000,
1376 0b_00000000,
1377 0b_00000000,
1378 0b_00000000,
1379 /* 62 '>' */
1380 0b_11000000,
1381 0b_01100000,
1382 0b_00110000,
1383 0b_00011000,
1384 0b_00110000,
1385 0b_01100000,
1386 0b_11000000,
1387 0b_00000000,
1388 /* 63 '?' */
1389 0b_01110000,
1390 0b_10001000,
1391 0b_00001000,
1392 0b_00010000,
1393 0b_00100000,
1394 0b_00000000,
1395 0b_00100000,
1396 0b_00000000,
1397 /* 64 '@' */
1398 0b_01110000,
1399 0b_10001000,
1400 0b_00001000,
1401 0b_01101000,
1402 0b_10101000,
1403 0b_10101000,
1404 0b_01110000,
1405 0b_00000000,
1406 /* 65 'A' */
1407 0b_00100000,
1408 0b_01010000,
1409 0b_10001000,
1410 0b_10001000,
1411 0b_11111000,
1412 0b_10001000,
1413 0b_10001000,
1414 0b_00000000,
1415 /* 66 'B' */
1416 0b_11110000,
1417 0b_01001000,
1418 0b_01001000,
1419 0b_01110000,
1420 0b_01001000,
1421 0b_01001000,
1422 0b_11110000,
1423 0b_00000000,
1424 /* 67 'C' */
1425 0b_00110000,
1426 0b_01001000,
1427 0b_10000000,
1428 0b_10000000,
1429 0b_10000000,
1430 0b_01001000,
1431 0b_00110000,
1432 0b_00000000,
1433 /* 68 'D' */
1434 0b_11100000,
1435 0b_01010000,
1436 0b_01001000,
1437 0b_01001000,
1438 0b_01001000,
1439 0b_01010000,
1440 0b_11100000,
1441 0b_00000000,
1442 /* 69 'E' */
1443 0b_11111000,
1444 0b_10000000,
1445 0b_10000000,
1446 0b_11110000,
1447 0b_10000000,
1448 0b_10000000,
1449 0b_11111000,
1450 0b_00000000,
1451 /* 70 'F' */
1452 0b_11111000,
1453 0b_10000000,
1454 0b_10000000,
1455 0b_11110000,
1456 0b_10000000,
1457 0b_10000000,
1458 0b_10000000,
1459 0b_00000000,
1460 /* 71 'G' */
1461 0b_01110000,
1462 0b_10001000,
1463 0b_10000000,
1464 0b_10111000,
1465 0b_10001000,
1466 0b_10001000,
1467 0b_01110000,
1468 0b_00000000,
1469 /* 72 'H' */
1470 0b_10001000,
1471 0b_10001000,
1472 0b_10001000,
1473 0b_11111000,
1474 0b_10001000,
1475 0b_10001000,
1476 0b_10001000,
1477 0b_00000000,
1478 /* 73 'I' */
1479 0b_01110000,
1480 0b_00100000,
1481 0b_00100000,
1482 0b_00100000,
1483 0b_00100000,
1484 0b_00100000,
1485 0b_01110000,
1486 0b_00000000,
1487 /* 74 'J' */
1488 0b_00111000,
1489 0b_00010000,
1490 0b_00010000,
1491 0b_00010000,
1492 0b_10010000,
1493 0b_10010000,
1494 0b_01100000,
1495 0b_00000000,
1496 /* 75 'K' */
1497 0b_10001000,
1498 0b_10010000,
1499 0b_10100000,
1500 0b_11000000,
1501 0b_10100000,
1502 0b_10010000,
1503 0b_10001000,
1504 0b_00000000,
1505 /* 76 'L' */
1506 0b_10000000,
1507 0b_10000000,
1508 0b_10000000,
1509 0b_10000000,
1510 0b_10000000,
1511 0b_10000000,
1512 0b_11111000,
1513 0b_00000000,
1514 /* 77 'M' */
1515 0b_10001000,
1516 0b_11011000,
1517 0b_10101000,
1518 0b_10101000,
1519 0b_10001000,
1520 0b_10001000,
1521 0b_10001000,
1522 0b_00000000,
1523 /* 78 'N' */
1524 0b_10001000,
1525 0b_11001000,
1526 0b_11001000,
1527 0b_10101000,
1528 0b_10011000,
1529 0b_10011000,
1530 0b_10001000,
1531 0b_00000000,
1532 /* 79 'O' */
1533 0b_01110000,
1534 0b_10001000,
1535 0b_10001000,
1536 0b_10001000,
1537 0b_10001000,
1538 0b_10001000,
1539 0b_01110000,
1540 0b_00000000,
1541 /* 80 'P' */
1542 0b_11110000,
1543 0b_10001000,
1544 0b_10001000,
1545 0b_11110000,
1546 0b_10000000,
1547 0b_10000000,
1548 0b_10000000,
1549 0b_00000000,
1550 /* 81 'Q' */
1551 0b_01110000,
1552 0b_10001000,
1553 0b_10001000,
1554 0b_10001000,
1555 0b_10101000,
1556 0b_10010000,
1557 0b_01101000,
1558 0b_00000000,
1559 /* 82 'R' */
1560 0b_11110000,
1561 0b_10001000,
1562 0b_10001000,
1563 0b_11110000,
1564 0b_10100000,
1565 0b_10010000,
1566 0b_10001000,
1567 0b_00000000,
1568 /* 83 'S' */
1569 0b_01110000,
1570 0b_10001000,
1571 0b_10000000,
1572 0b_01110000,
1573 0b_00001000,
1574 0b_10001000,
1575 0b_01110000,
1576 0b_00000000,
1577 /* 84 'T' */
1578 0b_11111000,
1579 0b_00100000,
1580 0b_00100000,
1581 0b_00100000,
1582 0b_00100000,
1583 0b_00100000,
1584 0b_00100000,
1585 0b_00000000,
1586 /* 85 'U' */
1587 0b_10001000,
1588 0b_10001000,
1589 0b_10001000,
1590 0b_10001000,
1591 0b_10001000,
1592 0b_10001000,
1593 0b_01110000,
1594 0b_00000000,
1595 /* 86 'V' */
1596 0b_10001000,
1597 0b_10001000,
1598 0b_10001000,
1599 0b_10001000,
1600 0b_01010000,
1601 0b_01010000,
1602 0b_00100000,
1603 0b_00000000,
1604 /* 87 'W' */
1605 0b_10001000,
1606 0b_10001000,
1607 0b_10001000,
1608 0b_10101000,
1609 0b_10101000,
1610 0b_11011000,
1611 0b_10001000,
1612 0b_00000000,
1613 /* 88 'X' */
1614 0b_10001000,
1615 0b_10001000,
1616 0b_01010000,
1617 0b_00100000,
1618 0b_01010000,
1619 0b_10001000,
1620 0b_10001000,
1621 0b_00000000,
1622 /* 89 'Y' */
1623 0b_10001000,
1624 0b_10001000,
1625 0b_10001000,
1626 0b_01110000,
1627 0b_00100000,
1628 0b_00100000,
1629 0b_00100000,
1630 0b_00000000,
1631 /* 90 'Z' */
1632 0b_11111000,
1633 0b_00001000,
1634 0b_00010000,
1635 0b_00100000,
1636 0b_01000000,
1637 0b_10000000,
1638 0b_11111000,
1639 0b_00000000,
1640 /* 91 '[' */
1641 0b_01110000,
1642 0b_01000000,
1643 0b_01000000,
1644 0b_01000000,
1645 0b_01000000,
1646 0b_01000000,
1647 0b_01110000,
1648 0b_00000000,
1649 /* 92 '\' */
1650 0b_00000000,
1651 0b_00000000,
1652 0b_10000000,
1653 0b_01000000,
1654 0b_00100000,
1655 0b_00010000,
1656 0b_00001000,
1657 0b_00000000,
1658 /* 93 ']' */
1659 0b_01110000,
1660 0b_00010000,
1661 0b_00010000,
1662 0b_00010000,
1663 0b_00010000,
1664 0b_00010000,
1665 0b_01110000,
1666 0b_00000000,
1667 /* 94 '^' */
1668 0b_00100000,
1669 0b_01010000,
1670 0b_10001000,
1671 0b_00000000,
1672 0b_00000000,
1673 0b_00000000,
1674 0b_00000000,
1675 0b_00000000,
1676 /* 95 '_' */
1677 0b_00000000,
1678 0b_00000000,
1679 0b_00000000,
1680 0b_00000000,
1681 0b_00000000,
1682 0b_00000000,
1683 0b_11111000,
1684 0b_00000000,
1685 /* 96 '`' */
1686 0b_01000000,
1687 0b_00100000,
1688 0b_00010000,
1689 0b_00000000,
1690 0b_00000000,
1691 0b_00000000,
1692 0b_00000000,
1693 0b_00000000,
1694 /* 97 'a' */
1695 0b_00000000,
1696 0b_00000000,
1697 0b_01110000,
1698 0b_00001000,
1699 0b_01111000,
1700 0b_10001000,
1701 0b_01111000,
1702 0b_00000000,
1703 /* 98 'b' */
1704 0b_10000000,
1705 0b_10000000,
1706 0b_10110000,
1707 0b_11001000,
1708 0b_10001000,
1709 0b_11001000,
1710 0b_10110000,
1711 0b_00000000,
1712 /* 99 'c' */
1713 0b_00000000,
1714 0b_00000000,
1715 0b_01110000,
1716 0b_10001000,
1717 0b_10000000,
1718 0b_10001000,
1719 0b_01110000,
1720 0b_00000000,
1721 /* 100 'd' */
1722 0b_00001000,
1723 0b_00001000,
1724 0b_01101000,
1725 0b_10011000,
1726 0b_10001000,
1727 0b_10011000,
1728 0b_01101000,
1729 0b_00000000,
1730 /* 101 'e' */
1731 0b_00000000,
1732 0b_00000000,
1733 0b_01110000,
1734 0b_10001000,
1735 0b_11111000,
1736 0b_10000000,
1737 0b_01110000,
1738 0b_00000000,
1739 /* 102 'f' */
1740 0b_00010000,
1741 0b_00101000,
1742 0b_00100000,
1743 0b_11111000,
1744 0b_00100000,
1745 0b_00100000,
1746 0b_00100000,
1747 0b_00000000,
1748 /* 103 'g' */
1749 0b_00000000,
1750 0b_00000000,
1751 0b_01101000,
1752 0b_10011000,
1753 0b_10011000,
1754 0b_01101000,
1755 0b_00001000,
1756 0b_01110000,
1757 /* 104 'h' */
1758 0b_10000000,
1759 0b_10000000,
1760 0b_11110000,
1761 0b_10001000,
1762 0b_10001000,
1763 0b_10001000,
1764 0b_10001000,
1765 0b_00000000,
1766 /* 105 'i' */
1767 0b_00100000,
1768 0b_00000000,
1769 0b_01100000,
1770 0b_00100000,
1771 0b_00100000,
1772 0b_00100000,
1773 0b_01110000,
1774 0b_00000000,
1775 /* 106 'j' */
1776 0b_00010000,
1777 0b_00000000,
1778 0b_00110000,
1779 0b_00010000,
1780 0b_00010000,
1781 0b_00010000,
1782 0b_10010000,
1783 0b_01100000,
1784 /* 107 'k' */
1785 0b_01000000,
1786 0b_01000000,
1787 0b_01001000,
1788 0b_01010000,
1789 0b_01100000,
1790 0b_01010000,
1791 0b_01001000,
1792 0b_00000000,
1793 /* 108 'l' */
1794 0b_01100000,
1795 0b_00100000,
1796 0b_00100000,
1797 0b_00100000,
1798 0b_00100000,
1799 0b_00100000,
1800 0b_01110000,
1801 0b_00000000,
1802 /* 109 'm' */
1803 0b_00000000,
1804 0b_00000000,
1805 0b_11010000,
1806 0b_10101000,
1807 0b_10101000,
1808 0b_10101000,
1809 0b_10101000,
1810 0b_00000000,
1811 /* 110 'n' */
1812 0b_00000000,
1813 0b_00000000,
1814 0b_10110000,
1815 0b_11001000,
1816 0b_10001000,
1817 0b_10001000,
1818 0b_10001000,
1819 0b_00000000,
1820 /* 111 'o' */
1821 0b_00000000,
1822 0b_00000000,
1823 0b_01110000,
1824 0b_10001000,
1825 0b_10001000,
1826 0b_10001000,
1827 0b_01110000,
1828 0b_00000000,
1829 /* 112 'p' */
1830 0b_00000000,
1831 0b_00000000,
1832 0b_10110000,
1833 0b_11001000,
1834 0b_11001000,
1835 0b_10110000,
1836 0b_10000000,
1837 0b_10000000,
1838 /* 113 'q' */
1839 0b_00000000,
1840 0b_00000000,
1841 0b_01101000,
1842 0b_10011000,
1843 0b_10011000,
1844 0b_01101000,
1845 0b_00001000,
1846 0b_00001000,
1847 /* 114 'r' */
1848 0b_00000000,
1849 0b_00000000,
1850 0b_10110000,
1851 0b_11001000,
1852 0b_10000000,
1853 0b_10000000,
1854 0b_10000000,
1855 0b_00000000,
1856 /* 115 's' */
1857 0b_00000000,
1858 0b_00000000,
1859 0b_01111000,
1860 0b_10000000,
1861 0b_11110000,
1862 0b_00001000,
1863 0b_11110000,
1864 0b_00000000,
1865 /* 116 't' */
1866 0b_01000000,
1867 0b_01000000,
1868 0b_11110000,
1869 0b_01000000,
1870 0b_01000000,
1871 0b_01001000,
1872 0b_00110000,
1873 0b_00000000,
1874 /* 117 'u' */
1875 0b_00000000,
1876 0b_00000000,
1877 0b_10010000,
1878 0b_10010000,
1879 0b_10010000,
1880 0b_10010000,
1881 0b_01101000,
1882 0b_00000000,
1883 /* 118 'v' */
1884 0b_00000000,
1885 0b_00000000,
1886 0b_10001000,
1887 0b_10001000,
1888 0b_10001000,
1889 0b_01010000,
1890 0b_00100000,
1891 0b_00000000,
1892 /* 119 'w' */
1893 0b_00000000,
1894 0b_00000000,
1895 0b_10001000,
1896 0b_10101000,
1897 0b_10101000,
1898 0b_10101000,
1899 0b_01010000,
1900 0b_00000000,
1901 /* 120 'x' */
1902 0b_00000000,
1903 0b_00000000,
1904 0b_10001000,
1905 0b_01010000,
1906 0b_00100000,
1907 0b_01010000,
1908 0b_10001000,
1909 0b_00000000,
1910 /* 121 'y' */
1911 0b_00000000,
1912 0b_00000000,
1913 0b_10001000,
1914 0b_10001000,
1915 0b_10011000,
1916 0b_01101000,
1917 0b_00001000,
1918 0b_01110000,
1919 /* 122 'z' */
1920 0b_00000000,
1921 0b_00000000,
1922 0b_11111000,
1923 0b_00010000,
1924 0b_00100000,
1925 0b_01000000,
1926 0b_11111000,
1927 0b_00000000,
1928 /* 123 '{' */
1929 0b_00011000,
1930 0b_00100000,
1931 0b_00100000,
1932 0b_01000000,
1933 0b_00100000,
1934 0b_00100000,
1935 0b_00011000,
1936 0b_00000000,
1937 /* 124 '|' */
1938 0b_00100000,
1939 0b_00100000,
1940 0b_00100000,
1941 0b_00000000,
1942 0b_00100000,
1943 0b_00100000,
1944 0b_00100000,
1945 0b_00000000,
1946 /* 125 '}' */
1947 0b_11000000,
1948 0b_00100000,
1949 0b_00100000,
1950 0b_00010000,
1951 0b_00100000,
1952 0b_00100000,
1953 0b_11000000,
1954 0b_00000000,
1955 /* 126 '~' */
1956 0b_01000000,
1957 0b_10101000,
1958 0b_00010000,
1959 0b_00000000,
1960 0b_00000000,
1961 0b_00000000,
1962 0b_00000000,
1963 0b_00000000,
1964 /* 127 */
1965 0b_00000000,
1966 0b_00000000,
1967 0b_00100000,
1968 0b_01010000,
1969 0b_11111000,
1970 0b_00000000,
1971 0b_00000000,
1972 0b_00000000,
1973 /* 128 */
1974 0b_00000000,
1975 0b_00000000,
1976 0b_00000000,
1977 0b_00000000,
1978 0b_00000000,
1979 0b_00000000,
1980 0b_11111111,
1981 0b_11111111,
1982 /* 129 */
1983 0b_11110000,
1984 0b_11110000,
1985 0b_11110000,
1986 0b_11110000,
1987 0b_00001111,
1988 0b_00001111,
1989 0b_00001111,
1990 0b_00001111,
1991 /* 130 */
1992 0b_00000000,
1993 0b_00000000,
1994 0b_11111111,
1995 0b_11111111,
1996 0b_11111111,
1997 0b_11111111,
1998 0b_11111111,
1999 0b_11111111,
2000 /* 131 */
2001 0b_11111111,
2002 0b_11111111,
2003 0b_00000000,
2004 0b_00000000,
2005 0b_00000000,
2006 0b_00000000,
2007 0b_00000000,
2008 0b_00000000,
2009 /* 132 */
2010 0b_00000000,
2011 0b_00000000,
2012 0b_00000000,
2013 0b_00111100,
2014 0b_00111100,
2015 0b_00000000,
2016 0b_00000000,
2017 0b_00000000,
2018 /* 133 */
2019 0b_11111111,
2020 0b_11111111,
2021 0b_11111111,
2022 0b_11111111,
2023 0b_11111111,
2024 0b_11111111,
2025 0b_00000000,
2026 0b_00000000,
2027 /* 134 */
2028 0b_11000000,
2029 0b_11000000,
2030 0b_11000000,
2031 0b_11000000,
2032 0b_11000000,
2033 0b_11000000,
2034 0b_11000000,
2035 0b_11000000,
2036 /* 135 */
2037 0b_00001111,
2038 0b_00001111,
2039 0b_00001111,
2040 0b_00001111,
2041 0b_11110000,
2042 0b_11110000,
2043 0b_11110000,
2044 0b_11110000,
2045 /* 136 */
2046 0b_11111100,
2047 0b_11111100,
2048 0b_11111100,
2049 0b_11111100,
2050 0b_11111100,
2051 0b_11111100,
2052 0b_11111100,
2053 0b_11111100,
2054 /* 137 */
2055 0b_00000011,
2056 0b_00000011,
2057 0b_00000011,
2058 0b_00000011,
2059 0b_00000011,
2060 0b_00000011,
2061 0b_00000011,
2062 0b_00000011,
2063 /* 138 */
2064 0b_00111111,
2065 0b_00111111,
2066 0b_00111111,
2067 0b_00111111,
2068 0b_00111111,
2069 0b_00111111,
2070 0b_00111111,
2071 0b_00111111,
2072 /* 139 */
2073 0b_00010001,
2074 0b_00100010,
2075 0b_01000100,
2076 0b_10001000,
2077 0b_00010001,
2078 0b_00100010,
2079 0b_01000100,
2080 0b_10001000,
2081 /* 140 */
2082 0b_10001000,
2083 0b_01000100,
2084 0b_00100010,
2085 0b_00010001,
2086 0b_10001000,
2087 0b_01000100,
2088 0b_00100010,
2089 0b_00010001,
2090 /* 141 */
2091 0b_11111110,
2092 0b_01111100,
2093 0b_00111000,
2094 0b_00010000,
2095 0b_00000000,
2096 0b_00000000,
2097 0b_00000000,
2098 0b_00000000,
2099 /* 142 */
2100 0b_00000000,
2101 0b_00000000,
2102 0b_00000000,
2103 0b_00000000,
2104 0b_00010000,
2105 0b_00111000,
2106 0b_01111100,
2107 0b_11111110,
2108 /* 143 */
2109 0b_10000000,
2110 0b_11000000,
2111 0b_11100000,
2112 0b_11110000,
2113 0b_11100000,
2114 0b_11000000,
2115 0b_10000000,
2116 0b_00000000,
2117 /* 144 */
2118 0b_00000001,
2119 0b_00000011,
2120 0b_00000111,
2121 0b_00001111,
2122 0b_00000111,
2123 0b_00000011,
2124 0b_00000001,
2125 0b_00000000,
2126 /* 145 */
2127 0b_11111111,
2128 0b_01111110,
2129 0b_00111100,
2130 0b_00011000,
2131 0b_00011000,
2132 0b_00111100,
2133 0b_01111110,
2134 0b_11111111,
2135 /* 146 */
2136 0b_10000001,
2137 0b_11000011,
2138 0b_11100111,
2139 0b_11111111,
2140 0b_11111111,
2141 0b_11100111,
2142 0b_11000011,
2143 0b_10000001,
2144 /* 147 */
2145 0b_11110000,
2146 0b_11110000,
2147 0b_11110000,
2148 0b_11110000,
2149 0b_00000000,
2150 0b_00000000,
2151 0b_00000000,
2152 0b_00000000,
2153 /* 148 */
2154 0b_00000000,
2155 0b_00000000,
2156 0b_00000000,
2157 0b_00000000,
2158 0b_00001111,
2159 0b_00001111,
2160 0b_00001111,
2161 0b_00001111,
2162 /* 149 */
2163 0b_00001111,
2164 0b_00001111,
2165 0b_00001111,
2166 0b_00001111,
2167 0b_00000000,
2168 0b_00000000,
2169 0b_00000000,
2170 0b_00000000,
2171 /* 150 */
2172 0b_00000000,
2173 0b_00000000,
2174 0b_00000000,
2175 0b_00000000,
2176 0b_11110000,
2177 0b_11110000,
2178 0b_11110000,
2179 0b_11110000,
2180 /* 151 */
2181 0b_00110011,
2182 0b_00110011,
2183 0b_11001100,
2184 0b_11001100,
2185 0b_00110011,
2186 0b_00110011,
2187 0b_11001100,
2188 0b_11001100,
2189 /* 152 */
2190 0b_00000000,
2191 0b_00100000,
2192 0b_00100000,
2193 0b_01010000,
2194 0b_01010000,
2195 0b_10001000,
2196 0b_11111000,
2197 0b_00000000,
2198 /* 153 */
2199 0b_00100000,
2200 0b_00100000,
2201 0b_01110000,
2202 0b_00100000,
2203 0b_01110000,
2204 0b_00100000,
2205 0b_00100000,
2206 0b_00000000,
2207 /* 154 */
2208 0b_00000000,
2209 0b_00000000,
2210 0b_00000000,
2211 0b_01010000,
2212 0b_10001000,
2213 0b_10101000,
2214 0b_01010000,
2215 0b_00000000,
2216 /* 155 */
2217 0b_11111111,
2218 0b_11111111,
2219 0b_11111111,
2220 0b_11111111,
2221 0b_11111111,
2222 0b_11111111,
2223 0b_11111111,
2224 0b_11111111,
2225 /* 156 */
2226 0b_00000000,
2227 0b_00000000,
2228 0b_00000000,
2229 0b_00000000,
2230 0b_11111111,
2231 0b_11111111,
2232 0b_11111111,
2233 0b_11111111,
2234 /* 157 */
2235 0b_11110000,
2236 0b_11110000,
2237 0b_11110000,
2238 0b_11110000,
2239 0b_11110000,
2240 0b_11110000,
2241 0b_11110000,
2242 0b_11110000,
2243 /* 158 */
2244 0b_00001111,
2245 0b_00001111,
2246 0b_00001111,
2247 0b_00001111,
2248 0b_00001111,
2249 0b_00001111,
2250 0b_00001111,
2251 0b_00001111,
2252 /* 159 */
2253 0b_11111111,
2254 0b_11111111,
2255 0b_11111111,
2256 0b_11111111,
2257 0b_00000000,
2258 0b_00000000,
2259 0b_00000000,
2260 0b_00000000,
2261 /* 160 */
2262 0b_00000000,
2263 0b_00000000,
2264 0b_01101000,
2265 0b_10010000,
2266 0b_10010000,
2267 0b_10010000,
2268 0b_01101000,
2269 0b_00000000,
2270 /* 161 */
2271 0b_00110000,
2272 0b_01001000,
2273 0b_01001000,
2274 0b_01110000,
2275 0b_01001000,
2276 0b_01001000,
2277 0b_01110000,
2278 0b_11000000,
2279 /* 162 */
2280 0b_11111000,
2281 0b_10001000,
2282 0b_10000000,
2283 0b_10000000,
2284 0b_10000000,
2285 0b_10000000,
2286 0b_10000000,
2287 0b_00000000,
2288 /* 163 */
2289 0b_00000000,
2290 0b_01010000,
2291 0b_01110000,
2292 0b_10001000,
2293 0b_11111000,
2294 0b_10000000,
2295 0b_01110000,
2296 0b_00000000,
2297 /* 164 */
2298 0b_00000000,
2299 0b_00000000,
2300 0b_01111000,
2301 0b_10000000,
2302 0b_11110000,
2303 0b_10000000,
2304 0b_01111000,
2305 0b_00000000,
2306 /* 165 */
2307 0b_00000000,
2308 0b_00000000,
2309 0b_01111000,
2310 0b_10010000,
2311 0b_10010000,
2312 0b_10010000,
2313 0b_01100000,
2314 0b_00000000,
2315 /* 166 */
2316 0b_00100000,
2317 0b_00000000,
2318 0b_01100000,
2319 0b_00100000,
2320 0b_00100000,
2321 0b_00100000,
2322 0b_01110000,
2323 0b_00000000,
2324 /* 167 */
2325 0b_01010000,
2326 0b_00000000,
2327 0b_01110000,
2328 0b_00100000,
2329 0b_00100000,
2330 0b_00100000,
2331 0b_01110000,
2332 0b_00000000,
2333 /* 168 */
2334 0b_11111000,
2335 0b_00100000,
2336 0b_01110000,
2337 0b_10101000,
2338 0b_10101000,
2339 0b_01110000,
2340 0b_00100000,
2341 0b_11111000,
2342 /* 169 */
2343 0b_00100000,
2344 0b_01010000,
2345 0b_10001000,
2346 0b_11111000,
2347 0b_10001000,
2348 0b_01010000,
2349 0b_00100000,
2350 0b_00000000,
2351 /* 170 */
2352 0b_01110000,
2353 0b_10001000,
2354 0b_10001000,
2355 0b_10001000,
2356 0b_01010000,
2357 0b_01010000,
2358 0b_11011000,
2359 0b_00000000,
2360 /* 171 */
2361 0b_00110000,
2362 0b_01000000,
2363 0b_01000000,
2364 0b_00100000,
2365 0b_01010000,
2366 0b_01010000,
2367 0b_01010000,
2368 0b_00100000,
2369 /* 172 */
2370 0b_00000000,
2371 0b_00000000,
2372 0b_00000000,
2373 0b_01010000,
2374 0b_10101000,
2375 0b_10101000,
2376 0b_01010000,
2377 0b_00000000,
2378 /* 173 */
2379 0b_00001000,
2380 0b_01110000,
2381 0b_10101000,
2382 0b_10101000,
2383 0b_10101000,
2384 0b_01110000,
2385 0b_10000000,
2386 0b_00000000,
2387 /* 174 */
2388 0b_00111000,
2389 0b_01000000,
2390 0b_10000000,
2391 0b_11111000,
2392 0b_10000000,
2393 0b_01000000,
2394 0b_00111000,
2395 0b_00000000,
2396 /* 175 */
2397 0b_01110000,
2398 0b_10001000,
2399 0b_10001000,
2400 0b_10001000,
2401 0b_10001000,
2402 0b_10001000,
2403 0b_10001000,
2404 0b_00000000,
2405 /* 176 */
2406 0b_00000000,
2407 0b_11111000,
2408 0b_00000000,
2409 0b_11111000,
2410 0b_00000000,
2411 0b_11111000,
2412 0b_00000000,
2413 0b_00000000,
2414 /* 177 */
2415 0b_00100000,
2416 0b_00100000,
2417 0b_11111000,
2418 0b_00100000,
2419 0b_00100000,
2420 0b_00000000,
2421 0b_11111000,
2422 0b_00000000,
2423 /* 178 */
2424 0b_11000000,
2425 0b_00110000,
2426 0b_00001000,
2427 0b_00110000,
2428 0b_11000000,
2429 0b_00000000,
2430 0b_11111000,
2431 0b_00000000,
2432 /* 179 */
2433 0b_01010000,
2434 0b_11111000,
2435 0b_10000000,
2436 0b_11110000,
2437 0b_10000000,
2438 0b_10000000,
2439 0b_11111000,
2440 0b_00000000,
2441 /* 180 */
2442 0b_01111000,
2443 0b_10000000,
2444 0b_10000000,
2445 0b_11110000,
2446 0b_10000000,
2447 0b_10000000,
2448 0b_01111000,
2449 0b_00000000,
2450 /* 181 */
2451 0b_00100000,
2452 0b_00100000,
2453 0b_00100000,
2454 0b_00100000,
2455 0b_00100000,
2456 0b_00100000,
2457 0b_10100000,
2458 0b_01000000,
2459 /* 182 */
2460 0b_01110000,
2461 0b_00100000,
2462 0b_00100000,
2463 0b_00100000,
2464 0b_00100000,
2465 0b_00100000,
2466 0b_01110000,
2467 0b_00000000,
2468 /* 183 */
2469 0b_01010000,
2470 0b_01110000,
2471 0b_00100000,
2472 0b_00100000,
2473 0b_00100000,
2474 0b_00100000,
2475 0b_01110000,
2476 0b_00000000,
2477 /* 184 */
2478 0b_00000000,
2479 0b_00011000,
2480 0b_00100100,
2481 0b_00100100,
2482 0b_00011000,
2483 0b_00000000,
2484 0b_00000000,
2485 0b_00000000,
2486 /* 185 */
2487 0b_00000000,
2488 0b_00110000,
2489 0b_01111000,
2490 0b_01111000,
2491 0b_00110000,
2492 0b_00000000,
2493 0b_00000000,
2494 0b_00000000,
2495 /* 186 */
2496 0b_00000000,
2497 0b_00000000,
2498 0b_00000000,
2499 0b_00000000,
2500 0b_00110000,
2501 0b_00000000,
2502 0b_00000000,
2503 0b_00000000,
2504 /* 187 */
2505 0b_00111110,
2506 0b_00100000,
2507 0b_00100000,
2508 0b_00100000,
2509 0b_10100000,
2510 0b_01100000,
2511 0b_00100000,
2512 0b_00000000,
2513 /* 188 */
2514 0b_10100000,
2515 0b_01010000,
2516 0b_01010000,
2517 0b_01010000,
2518 0b_00000000,
2519 0b_00000000,
2520 0b_00000000,
2521 0b_00000000,
2522 /* 189 */
2523 0b_01000000,
2524 0b_10100000,
2525 0b_00100000,
2526 0b_01000000,
2527 0b_11100000,
2528 0b_00000000,
2529 0b_00000000,
2530 0b_00000000,
2531 /* 190 */
2532 0b_00000000,
2533 0b_00111000,
2534 0b_00111000,
2535 0b_00111000,
2536 0b_00111000,
2537 0b_00111000,
2538 0b_00111000,
2539 0b_00000000,
2540 /* 191 */
2541 0b_00111100,
2542 0b_01000010,
2543 0b_10011001,
2544 0b_10100001,
2545 0b_10100001,
2546 0b_10011001,
2547 0b_01000010,
2548 0b_00111100,
2549 /* 192 */
2550 0b_00000000,
2551 0b_00000000,
2552 0b_10010000,
2553 0b_10101000,
2554 0b_11101000,
2555 0b_10101000,
2556 0b_10010000,
2557 0b_00000000,
2558 /* 193 */
2559 0b_00000000,
2560 0b_00000000,
2561 0b_01100000,
2562 0b_00010000,
2563 0b_01110000,
2564 0b_10010000,
2565 0b_01101000,
2566 0b_00000000,
2567 /* 194 */
2568 0b_00000000,
2569 0b_00000000,
2570 0b_11110000,
2571 0b_10000000,
2572 0b_11110000,
2573 0b_10001000,
2574 0b_11110000,
2575 0b_00000000,
2576 /* 195 */
2577 0b_00000000,
2578 0b_00000000,
2579 0b_10010000,
2580 0b_10010000,
2581 0b_10010000,
2582 0b_11111000,
2583 0b_00001000,
2584 0b_00000000,
2585 /* 196 */
2586 0b_00000000,
2587 0b_00000000,
2588 0b_00110000,
2589 0b_01010000,
2590 0b_01010000,
2591 0b_01110000,
2592 0b_10001000,
2593 0b_00000000,
2594 /* 197 */
2595 0b_00000000,
2596 0b_00000000,
2597 0b_01110000,
2598 0b_10001000,
2599 0b_11111000,
2600 0b_10000000,
2601 0b_01110000,
2602 0b_00000000,
2603 /* 198 */
2604 0b_00000000,
2605 0b_00100000,
2606 0b_01110000,
2607 0b_10101000,
2608 0b_10101000,
2609 0b_01110000,
2610 0b_00100000,
2611 0b_00000000,
2612 /* 199 */
2613 0b_00000000,
2614 0b_00000000,
2615 0b_01111000,
2616 0b_01001000,
2617 0b_01000000,
2618 0b_01000000,
2619 0b_01000000,
2620 0b_00000000,
2621 /* 200 */
2622 0b_00000000,
2623 0b_00000000,
2624 0b_10001000,
2625 0b_01010000,
2626 0b_00100000,
2627 0b_01010000,
2628 0b_10001000,
2629 0b_00000000,
2630 /* 201 */
2631 0b_00000000,
2632 0b_00000000,
2633 0b_10001000,
2634 0b_10011000,
2635 0b_10101000,
2636 0b_11001000,
2637 0b_10001000,
2638 0b_00000000,
2639 /* 202 */
2640 0b_00000000,
2641 0b_01010000,
2642 0b_00100000,
2643 0b_00000000,
2644 0b_10011000,
2645 0b_10101000,
2646 0b_11001000,
2647 0b_00000000,
2648 /* 203 */
2649 0b_00000000,
2650 0b_00000000,
2651 0b_10010000,
2652 0b_10100000,
2653 0b_11000000,
2654 0b_10100000,
2655 0b_10010000,
2656 0b_00000000,
2657 /* 204 */
2658 0b_00000000,
2659 0b_00000000,
2660 0b_00111000,
2661 0b_00101000,
2662 0b_00101000,
2663 0b_01001000,
2664 0b_10001000,
2665 0b_00000000,
2666 /* 205 */
2667 0b_00000000,
2668 0b_00000000,
2669 0b_10001000,
2670 0b_11011000,
2671 0b_10101000,
2672 0b_10001000,
2673 0b_10001000,
2674 0b_00000000,
2675 /* 206 */
2676 0b_00000000,
2677 0b_00000000,
2678 0b_10001000,
2679 0b_10001000,
2680 0b_11111000,
2681 0b_10001000,
2682 0b_10001000,
2683 0b_00000000,
2684 /* 207 */
2685 0b_00000000,
2686 0b_00000000,
2687 0b_01110000,
2688 0b_10001000,
2689 0b_10001000,
2690 0b_10001000,
2691 0b_01110000,
2692 0b_00000000,
2693 /* 208 */
2694 0b_00000000,
2695 0b_00000000,
2696 0b_01111000,
2697 0b_01001000,
2698 0b_01001000,
2699 0b_01001000,
2700 0b_01001000,
2701 0b_00000000,
2702 /* 209 */
2703 0b_00000000,
2704 0b_00000000,
2705 0b_01111000,
2706 0b_10001000,
2707 0b_01111000,
2708 0b_00101000,
2709 0b_01001000,
2710 0b_00000000,
2711 /* 210 */
2712 0b_00000000,
2713 0b_00000000,
2714 0b_11110000,
2715 0b_10001000,
2716 0b_11110000,
2717 0b_10000000,
2718 0b_10000000,
2719 0b_00000000,
2720 /* 211 */
2721 0b_00000000,
2722 0b_00000000,
2723 0b_01111000,
2724 0b_10000000,
2725 0b_10000000,
2726 0b_10000000,
2727 0b_01111000,
2728 0b_00000000,
2729 /* 212 */
2730 0b_00000000,
2731 0b_00000000,
2732 0b_11111000,
2733 0b_00100000,
2734 0b_00100000,
2735 0b_00100000,
2736 0b_00100000,
2737 0b_00000000,
2738 /* 213 */
2739 0b_00000000,
2740 0b_00000000,
2741 0b_10001000,
2742 0b_01010000,
2743 0b_00100000,
2744 0b_01000000,
2745 0b_10000000,
2746 0b_00000000,
2747 /* 214 */
2748 0b_00000000,
2749 0b_00000000,
2750 0b_10101000,
2751 0b_01110000,
2752 0b_00100000,
2753 0b_01110000,
2754 0b_10101000,
2755 0b_00000000,
2756 /* 215 */
2757 0b_00000000,
2758 0b_00000000,
2759 0b_11110000,
2760 0b_01001000,
2761 0b_01110000,
2762 0b_01001000,
2763 0b_11110000,
2764 0b_00000000,
2765 /* 216 */
2766 0b_00000000,
2767 0b_00000000,
2768 0b_01000000,
2769 0b_01000000,
2770 0b_01110000,
2771 0b_01001000,
2772 0b_01110000,
2773 0b_00000000,
2774 /* 217 */
2775 0b_00000000,
2776 0b_00000000,
2777 0b_10001000,
2778 0b_10001000,
2779 0b_11001000,
2780 0b_10101000,
2781 0b_11001000,
2782 0b_00000000,
2783 /* 218 */
2784 0b_00000000,
2785 0b_00000000,
2786 0b_11110000,
2787 0b_00001000,
2788 0b_01110000,
2789 0b_00001000,
2790 0b_11110000,
2791 0b_00000000,
2792 /* 219 */
2793 0b_00000000,
2794 0b_00000000,
2795 0b_10101000,
2796 0b_10101000,
2797 0b_10101000,
2798 0b_10101000,
2799 0b_11111000,
2800 0b_00000000,
2801 /* 220 */
2802 0b_00000000,
2803 0b_00000000,
2804 0b_01110000,
2805 0b_10001000,
2806 0b_00111000,
2807 0b_10001000,
2808 0b_01110000,
2809 0b_00000000,
2810 /* 221 */
2811 0b_00000000,
2812 0b_00000000,
2813 0b_10101000,
2814 0b_10101000,
2815 0b_10101000,
2816 0b_11111000,
2817 0b_00001000,
2818 0b_00000000,
2819 /* 222 */
2820 0b_00000000,
2821 0b_00000000,
2822 0b_01001000,
2823 0b_01001000,
2824 0b_01111000,
2825 0b_00001000,
2826 0b_00001000,
2827 0b_00000000,
2828 /* 223 */
2829 0b_00000000,
2830 0b_00000000,
2831 0b_11000000,
2832 0b_01000000,
2833 0b_01110000,
2834 0b_01001000,
2835 0b_01110000,
2836 0b_00000000,
2837 /* 224 */
2838 0b_10010000,
2839 0b_10101000,
2840 0b_10101000,
2841 0b_11101000,
2842 0b_10101000,
2843 0b_10101000,
2844 0b_10010000,
2845 0b_00000000,
2846 /* 225 */
2847 0b_00100000,
2848 0b_01010000,
2849 0b_10001000,
2850 0b_10001000,
2851 0b_11111000,
2852 0b_10001000,
2853 0b_10001000,
2854 0b_00000000,
2855 /* 226 */
2856 0b_11111000,
2857 0b_10001000,
2858 0b_10000000,
2859 0b_11110000,
2860 0b_10001000,
2861 0b_10001000,
2862 0b_11110000,
2863 0b_00000000,
2864 /* 227 */
2865 0b_10010000,
2866 0b_10010000,
2867 0b_10010000,
2868 0b_10010000,
2869 0b_10010000,
2870 0b_11111000,
2871 0b_00001000,
2872 0b_00000000,
2873 /* 228 */
2874 0b_00111000,
2875 0b_00101000,
2876 0b_00101000,
2877 0b_01001000,
2878 0b_01001000,
2879 0b_11111000,
2880 0b_10001000,
2881 0b_00000000,
2882 /* 229 */
2883 0b_11111000,
2884 0b_10000000,
2885 0b_10000000,
2886 0b_11110000,
2887 0b_10000000,
2888 0b_10000000,
2889 0b_11111000,
2890 0b_00000000,
2891 /* 230 */
2892 0b_00100000,
2893 0b_01110000,
2894 0b_10101000,
2895 0b_10101000,
2896 0b_10101000,
2897 0b_01110000,
2898 0b_00100000,
2899 0b_00000000,
2900 /* 231 */
2901 0b_11111000,
2902 0b_10001000,
2903 0b_10001000,
2904 0b_10000000,
2905 0b_10000000,
2906 0b_10000000,
2907 0b_10000000,
2908 0b_00000000,
2909 /* 232 */
2910 0b_10001000,
2911 0b_10001000,
2912 0b_01010000,
2913 0b_00100000,
2914 0b_01010000,
2915 0b_10001000,
2916 0b_10001000,
2917 0b_00000000,
2918 /* 233 */
2919 0b_10001000,
2920 0b_10001000,
2921 0b_10011000,
2922 0b_10101000,
2923 0b_11001000,
2924 0b_10001000,
2925 0b_10001000,
2926 0b_00000000,
2927 /* 234 */
2928 0b_01010000,
2929 0b_00100000,
2930 0b_10001000,
2931 0b_10011000,
2932 0b_10101000,
2933 0b_11001000,
2934 0b_10001000,
2935 0b_00000000,
2936 /* 235 */
2937 0b_10001000,
2938 0b_10010000,
2939 0b_10100000,
2940 0b_11000000,
2941 0b_10100000,
2942 0b_10010000,
2943 0b_10001000,
2944 0b_00000000,
2945 /* 236 */
2946 0b_00011000,
2947 0b_00101000,
2948 0b_01001000,
2949 0b_01001000,
2950 0b_01001000,
2951 0b_01001000,
2952 0b_10001000,
2953 0b_00000000,
2954 /* 237 */
2955 0b_10001000,
2956 0b_11011000,
2957 0b_10101000,
2958 0b_10101000,
2959 0b_10001000,
2960 0b_10001000,
2961 0b_10001000,
2962 0b_00000000,
2963 /* 238 */
2964 0b_10001000,
2965 0b_10001000,
2966 0b_10001000,
2967 0b_11111000,
2968 0b_10001000,
2969 0b_10001000,
2970 0b_10001000,
2971 0b_00000000,
2972 /* 239 */
2973 0b_01110000,
2974 0b_10001000,
2975 0b_10001000,
2976 0b_10001000,
2977 0b_10001000,
2978 0b_10001000,
2979 0b_01110000,
2980 0b_00000000,
2981 /* 240 */
2982 0b_11111000,
2983 0b_10001000,
2984 0b_10001000,
2985 0b_10001000,
2986 0b_10001000,
2987 0b_10001000,
2988 0b_10001000,
2989 0b_00000000,
2990 /* 241 */
2991 0b_01111000,
2992 0b_10001000,
2993 0b_10001000,
2994 0b_01111000,
2995 0b_00101000,
2996 0b_01001000,
2997 0b_10001000,
2998 0b_00000000,
2999 /* 242 */
3000 0b_11110000,
3001 0b_10001000,
3002 0b_10001000,
3003 0b_11110000,
3004 0b_10000000,
3005 0b_10000000,
3006 0b_10000000,
3007 0b_00000000,
3008 /* 243 */
3009 0b_01110000,
3010 0b_10001000,
3011 0b_10000000,
3012 0b_10000000,
3013 0b_10000000,
3014 0b_10001000,
3015 0b_01110000,
3016 0b_00000000,
3017 /* 244 */
3018 0b_11111000,
3019 0b_00100000,
3020 0b_00100000,
3021 0b_00100000,
3022 0b_00100000,
3023 0b_00100000,
3024 0b_00100000,
3025 0b_00000000,
3026 /* 245 */
3027 0b_10001000,
3028 0b_10001000,
3029 0b_10001000,
3030 0b_01010000,
3031 0b_00100000,
3032 0b_01000000,
3033 0b_10000000,
3034 0b_00000000,
3035 /* 246 */
3036 0b_10101000,
3037 0b_10101000,
3038 0b_01110000,
3039 0b_00100000,
3040 0b_01110000,
3041 0b_10101000,
3042 0b_10101000,
3043 0b_00000000,
3044 /* 247 */
3045 0b_11110000,
3046 0b_01001000,
3047 0b_01001000,
3048 0b_01110000,
3049 0b_01001000,
3050 0b_01001000,
3051 0b_11110000,
3052 0b_00000000,
3053 /* 248 */
3054 0b_10000000,
3055 0b_10000000,
3056 0b_10000000,
3057 0b_11110000,
3058 0b_10001000,
3059 0b_10001000,
3060 0b_11110000,
3061 0b_00000000,
3062 /* 249 */
3063 0b_10001000,
3064 0b_10001000,
3065 0b_10001000,
3066 0b_11001000,
3067 0b_10101000,
3068 0b_10101000,
3069 0b_11001000,
3070 0b_00000000,
3071 /* 250 */
3072 0b_11110000,
3073 0b_00001000,
3074 0b_00001000,
3075 0b_00110000,
3076 0b_00001000,
3077 0b_00001000,
3078 0b_11110000,
3079 0b_00000000,
3080 /* 251 */
3081 0b_10101000,
3082 0b_10101000,
3083 0b_10101000,
3084 0b_10101000,
3085 0b_10101000,
3086 0b_10101000,
3087 0b_11111000,
3088 0b_00000000,
3089 /* 252 */
3090 0b_01110000,
3091 0b_10001000,
3092 0b_00001000,
3093 0b_01111000,
3094 0b_00001000,
3095 0b_10001000,
3096 0b_01110000,
3097 0b_00000000,
3098 /* 253 */
3099 0b_10101000,
3100 0b_10101000,
3101 0b_10101000,
3102 0b_10101000,
3103 0b_10101000,
3104 0b_11111000,
3105 0b_00001000,
3106 0b_00000000,
3107 /* 254 */
3108 0b_10001000,
3109 0b_10001000,
3110 0b_10001000,
3111 0b_10001000,
3112 0b_01111000,
3113 0b_00001000,
3114 0b_00001000,
3115 0b_00000000,
3116 /* 255 */
3117 0b_11000000,
3118 0b_01000000,
3119 0b_01000000,
3120 0b_01110000,
3121 0b_01001000,
3122 0b_01001000,
3123 0b_01110000,
3124 0b_00000000,
3128 // bits 0..3: width
3129 // bits 4..7: lshift
3130 public immutable ubyte[256] vlFontPropWidth = () {
3131 ubyte[256] res;
3132 foreach (immutable cnum; 0..256) {
3133 import core.bitop : bsf, bsr;
3134 immutable doshift =
3135 (cnum >= 32 && cnum <= 127) ||
3136 (cnum >= 143 && cnum <= 144) ||
3137 (cnum >= 166 && cnum <= 167) ||
3138 (cnum >= 192 && cnum <= 255);
3139 int shift = 0;
3140 if (doshift) {
3141 shift = 8;
3142 foreach (immutable dy; 0..8) {
3143 immutable b = vlFont6[cnum*8+dy];
3144 if (b) {
3145 immutable mn = 7-bsr(b);
3146 if (mn < shift) shift = mn;
3150 ubyte wdt = 0;
3151 foreach (immutable dy; 0..8) {
3152 immutable b = (vlFont6[cnum*8+dy]<<shift);
3153 immutable cwdt = (b ? 8-bsf(b) : 0);
3154 if (cwdt > wdt) wdt = cast(ubyte)cwdt;
3156 switch (cnum) {
3157 case 0: wdt = 8; break; // 8px space
3158 case 32: wdt = 5; break; // 5px space
3159 case 17: .. case 27: wdt = 8; break; // single frames
3160 case 48: .. case 57: wdt = 5; break; // digits are monospaced
3161 case 127: .. case 142: wdt = 8; break; // filled frames
3162 case 145: .. case 151: wdt = 8; break; // filled frames
3163 case 155: .. case 159: wdt = 8; break; // filled frames
3164 default:
3166 res[cnum] = (wdt&0x0f)|((shift<<4)&0xf0);
3168 return res;
3169 }();
3172 public static immutable ubyte[256*8] dosFont8 = [
3173 /* 0x00 */
3174 0b_00000000,
3175 0b_00000000,
3176 0b_00000000,
3177 0b_00000000,
3178 0b_00000000,
3179 0b_00000000,
3180 0b_00000000,
3181 0b_00000000,
3182 /* 0x01 */
3183 0b_01111110,
3184 0b_10000001,
3185 0b_10100101,
3186 0b_10000001,
3187 0b_10111101,
3188 0b_10011001,
3189 0b_10000001,
3190 0b_01111110,
3191 /* 0x02 */
3192 0b_01111110,
3193 0b_11111111,
3194 0b_11011011,
3195 0b_11111111,
3196 0b_11000011,
3197 0b_11100111,
3198 0b_11111111,
3199 0b_01111110,
3200 /* 0x03 */
3201 0b_01101100,
3202 0b_11111110,
3203 0b_11111110,
3204 0b_11111110,
3205 0b_01111100,
3206 0b_00111000,
3207 0b_00010000,
3208 0b_00000000,
3209 /* 0x04 */
3210 0b_00010000,
3211 0b_00111000,
3212 0b_01111100,
3213 0b_11111110,
3214 0b_01111100,
3215 0b_00111000,
3216 0b_00010000,
3217 0b_00000000,
3218 /* 0x05 */
3219 0b_00111000,
3220 0b_01111100,
3221 0b_00111000,
3222 0b_11111110,
3223 0b_11111110,
3224 0b_11010110,
3225 0b_00010000,
3226 0b_00111000,
3227 /* 0x06 */
3228 0b_00010000,
3229 0b_00010000,
3230 0b_00111000,
3231 0b_01111100,
3232 0b_11111110,
3233 0b_01111100,
3234 0b_00010000,
3235 0b_00111000,
3236 /* 0x07 */
3237 0b_00000000,
3238 0b_00000000,
3239 0b_00011000,
3240 0b_00111100,
3241 0b_00111100,
3242 0b_00011000,
3243 0b_00000000,
3244 0b_00000000,
3245 /* 0x08 */
3246 0b_11111111,
3247 0b_11111111,
3248 0b_11100111,
3249 0b_11000011,
3250 0b_11000011,
3251 0b_11100111,
3252 0b_11111111,
3253 0b_11111111,
3254 /* 0x09 */
3255 0b_00000000,
3256 0b_00111100,
3257 0b_01100110,
3258 0b_01000010,
3259 0b_01000010,
3260 0b_01100110,
3261 0b_00111100,
3262 0b_00000000,
3263 /* 0x0a */
3264 0b_11111111,
3265 0b_11000011,
3266 0b_10011001,
3267 0b_10111101,
3268 0b_10111101,
3269 0b_10011001,
3270 0b_11000011,
3271 0b_11111111,
3272 /* 0x0b */
3273 0b_00001111,
3274 0b_00000111,
3275 0b_00001111,
3276 0b_01111101,
3277 0b_11001100,
3278 0b_11001100,
3279 0b_11001100,
3280 0b_01111000,
3281 /* 0x0c */
3282 0b_00111100,
3283 0b_01100110,
3284 0b_01100110,
3285 0b_01100110,
3286 0b_00111100,
3287 0b_00011000,
3288 0b_01111110,
3289 0b_00011000,
3290 /* 0x0d */
3291 0b_00111111,
3292 0b_00110011,
3293 0b_00111111,
3294 0b_00110000,
3295 0b_00110000,
3296 0b_01110000,
3297 0b_11110000,
3298 0b_11100000,
3299 /* 0x0e */
3300 0b_01111111,
3301 0b_01100011,
3302 0b_01111111,
3303 0b_01100011,
3304 0b_01100011,
3305 0b_01100111,
3306 0b_11100110,
3307 0b_11000000,
3308 /* 0x0f */
3309 0b_10011001,
3310 0b_01011010,
3311 0b_00111100,
3312 0b_11100111,
3313 0b_11100111,
3314 0b_00111100,
3315 0b_01011010,
3316 0b_10011001,
3317 /* 0x10 */
3318 0b_10000000,
3319 0b_11100000,
3320 0b_11111000,
3321 0b_11111110,
3322 0b_11111000,
3323 0b_11100000,
3324 0b_10000000,
3325 0b_00000000,
3326 /* 0x11 */
3327 0b_00000010,
3328 0b_00001110,
3329 0b_00111110,
3330 0b_11111110,
3331 0b_00111110,
3332 0b_00001110,
3333 0b_00000010,
3334 0b_00000000,
3335 /* 0x12 */
3336 0b_00011000,
3337 0b_00111100,
3338 0b_01111110,
3339 0b_00011000,
3340 0b_00011000,
3341 0b_01111110,
3342 0b_00111100,
3343 0b_00011000,
3344 /* 0x13 */
3345 0b_01100110,
3346 0b_01100110,
3347 0b_01100110,
3348 0b_01100110,
3349 0b_01100110,
3350 0b_00000000,
3351 0b_01100110,
3352 0b_00000000,
3353 /* 0x14 */
3354 0b_01111111,
3355 0b_11011011,
3356 0b_11011011,
3357 0b_01111011,
3358 0b_00011011,
3359 0b_00011011,
3360 0b_00011011,
3361 0b_00000000,
3362 /* 0x15 */
3363 0b_01111110,
3364 0b_11000011,
3365 0b_01111000,
3366 0b_11001100,
3367 0b_11001100,
3368 0b_01111000,
3369 0b_10001100,
3370 0b_11111000,
3371 /* 0x16 */
3372 0b_00000000,
3373 0b_00000000,
3374 0b_00000000,
3375 0b_00000000,
3376 0b_01111110,
3377 0b_01111110,
3378 0b_01111110,
3379 0b_00000000,
3380 /* 0x17 */
3381 0b_00011000,
3382 0b_00111100,
3383 0b_01111110,
3384 0b_00011000,
3385 0b_01111110,
3386 0b_00111100,
3387 0b_00011000,
3388 0b_11111111,
3389 /* 0x18 */
3390 0b_00011000,
3391 0b_00111100,
3392 0b_01111110,
3393 0b_00011000,
3394 0b_00011000,
3395 0b_00011000,
3396 0b_00011000,
3397 0b_00000000,
3398 /* 0x19 */
3399 0b_00011000,
3400 0b_00011000,
3401 0b_00011000,
3402 0b_00011000,
3403 0b_01111110,
3404 0b_00111100,
3405 0b_00011000,
3406 0b_00000000,
3407 /* 0x1a */
3408 0b_00000000,
3409 0b_00011000,
3410 0b_00001100,
3411 0b_11111110,
3412 0b_00001100,
3413 0b_00011000,
3414 0b_00000000,
3415 0b_00000000,
3416 /* 0x1b */
3417 0b_00000000,
3418 0b_00110000,
3419 0b_01100000,
3420 0b_11111110,
3421 0b_01100000,
3422 0b_00110000,
3423 0b_00000000,
3424 0b_00000000,
3425 /* 0x1c */
3426 0b_00000000,
3427 0b_00000000,
3428 0b_11000000,
3429 0b_11000000,
3430 0b_11000000,
3431 0b_11111110,
3432 0b_00000000,
3433 0b_00000000,
3434 /* 0x1d */
3435 0b_00000000,
3436 0b_00100100,
3437 0b_01100110,
3438 0b_11111111,
3439 0b_01100110,
3440 0b_00100100,
3441 0b_00000000,
3442 0b_00000000,
3443 /* 0x1e */
3444 0b_00000000,
3445 0b_00011000,
3446 0b_00111100,
3447 0b_01111110,
3448 0b_11111111,
3449 0b_11111111,
3450 0b_00000000,
3451 0b_00000000,
3452 /* 0x1f */
3453 0b_00000000,
3454 0b_11111111,
3455 0b_11111111,
3456 0b_01111110,
3457 0b_00111100,
3458 0b_00011000,
3459 0b_00000000,
3460 0b_00000000,
3461 /* 0x20 */
3462 0b_00000000,
3463 0b_00000000,
3464 0b_00000000,
3465 0b_00000000,
3466 0b_00000000,
3467 0b_00000000,
3468 0b_00000000,
3469 0b_00000000,
3470 /* ! */
3471 0b_00110000,
3472 0b_01111000,
3473 0b_01111000,
3474 0b_00110000,
3475 0b_00110000,
3476 0b_00000000,
3477 0b_00110000,
3478 0b_00000000,
3479 /* " */
3480 0b_01101100,
3481 0b_01101100,
3482 0b_01101100,
3483 0b_00000000,
3484 0b_00000000,
3485 0b_00000000,
3486 0b_00000000,
3487 0b_00000000,
3488 /* # */
3489 0b_01101100,
3490 0b_01101100,
3491 0b_11111110,
3492 0b_01101100,
3493 0b_11111110,
3494 0b_01101100,
3495 0b_01101100,
3496 0b_00000000,
3497 /* $ */
3498 0b_00110000,
3499 0b_01111100,
3500 0b_11000000,
3501 0b_01111000,
3502 0b_00001100,
3503 0b_11111000,
3504 0b_00110000,
3505 0b_00000000,
3506 /* % */
3507 0b_00000000,
3508 0b_11000110,
3509 0b_11001100,
3510 0b_00011000,
3511 0b_00110000,
3512 0b_01100110,
3513 0b_11000110,
3514 0b_00000000,
3515 /* & */
3516 0b_00111000,
3517 0b_01101100,
3518 0b_00111000,
3519 0b_01110110,
3520 0b_11011100,
3521 0b_11001100,
3522 0b_01110110,
3523 0b_00000000,
3524 /* ' */
3525 0b_01100000,
3526 0b_01100000,
3527 0b_11000000,
3528 0b_00000000,
3529 0b_00000000,
3530 0b_00000000,
3531 0b_00000000,
3532 0b_00000000,
3533 /* ( */
3534 0b_00011000,
3535 0b_00110000,
3536 0b_01100000,
3537 0b_01100000,
3538 0b_01100000,
3539 0b_00110000,
3540 0b_00011000,
3541 0b_00000000,
3542 /* ) */
3543 0b_01100000,
3544 0b_00110000,
3545 0b_00011000,
3546 0b_00011000,
3547 0b_00011000,
3548 0b_00110000,
3549 0b_01100000,
3550 0b_00000000,
3551 /* * */
3552 0b_00000000,
3553 0b_01100110,
3554 0b_00111100,
3555 0b_11111111,
3556 0b_00111100,
3557 0b_01100110,
3558 0b_00000000,
3559 0b_00000000,
3560 /* + */
3561 0b_00000000,
3562 0b_00110000,
3563 0b_00110000,
3564 0b_11111100,
3565 0b_00110000,
3566 0b_00110000,
3567 0b_00000000,
3568 0b_00000000,
3569 /* , */
3570 0b_00000000,
3571 0b_00000000,
3572 0b_00000000,
3573 0b_00000000,
3574 0b_00000000,
3575 0b_01110000,
3576 0b_00110000,
3577 0b_01100000,
3578 /* - */
3579 0b_00000000,
3580 0b_00000000,
3581 0b_00000000,
3582 0b_11111100,
3583 0b_00000000,
3584 0b_00000000,
3585 0b_00000000,
3586 0b_00000000,
3587 /* . */
3588 0b_00000000,
3589 0b_00000000,
3590 0b_00000000,
3591 0b_00000000,
3592 0b_00000000,
3593 0b_00110000,
3594 0b_00110000,
3595 0b_00000000,
3596 /* / */
3597 0b_00000110,
3598 0b_00001100,
3599 0b_00011000,
3600 0b_00110000,
3601 0b_01100000,
3602 0b_11000000,
3603 0b_10000000,
3604 0b_00000000,
3605 /* 0 */
3606 0b_01111000,
3607 0b_11001100,
3608 0b_11011100,
3609 0b_11111100,
3610 0b_11101100,
3611 0b_11001100,
3612 0b_01111000,
3613 0b_00000000,
3614 /* 1 */
3615 0b_00110000,
3616 0b_11110000,
3617 0b_00110000,
3618 0b_00110000,
3619 0b_00110000,
3620 0b_00110000,
3621 0b_11111100,
3622 0b_00000000,
3623 /* 2 */
3624 0b_01111000,
3625 0b_11001100,
3626 0b_00001100,
3627 0b_00111000,
3628 0b_01100000,
3629 0b_11001100,
3630 0b_11111100,
3631 0b_00000000,
3632 /* 3 */
3633 0b_01111000,
3634 0b_11001100,
3635 0b_00001100,
3636 0b_00111000,
3637 0b_00001100,
3638 0b_11001100,
3639 0b_01111000,
3640 0b_00000000,
3641 /* 4 */
3642 0b_00011100,
3643 0b_00111100,
3644 0b_01101100,
3645 0b_11001100,
3646 0b_11111110,
3647 0b_00001100,
3648 0b_00001100,
3649 0b_00000000,
3650 /* 5 */
3651 0b_11111100,
3652 0b_11000000,
3653 0b_11111000,
3654 0b_00001100,
3655 0b_00001100,
3656 0b_11001100,
3657 0b_01111000,
3658 0b_00000000,
3659 /* 6 */
3660 0b_00111000,
3661 0b_01100000,
3662 0b_11000000,
3663 0b_11111000,
3664 0b_11001100,
3665 0b_11001100,
3666 0b_01111000,
3667 0b_00000000,
3668 /* 7 */
3669 0b_11111100,
3670 0b_11001100,
3671 0b_00001100,
3672 0b_00011000,
3673 0b_00110000,
3674 0b_01100000,
3675 0b_01100000,
3676 0b_00000000,
3677 /* 8 */
3678 0b_01111000,
3679 0b_11001100,
3680 0b_11001100,
3681 0b_01111000,
3682 0b_11001100,
3683 0b_11001100,
3684 0b_01111000,
3685 0b_00000000,
3686 /* 9 */
3687 0b_01111000,
3688 0b_11001100,
3689 0b_11001100,
3690 0b_01111100,
3691 0b_00001100,
3692 0b_00011000,
3693 0b_01110000,
3694 0b_00000000,
3695 /* : */
3696 0b_00000000,
3697 0b_00000000,
3698 0b_00110000,
3699 0b_00110000,
3700 0b_00000000,
3701 0b_00110000,
3702 0b_00110000,
3703 0b_00000000,
3704 /* ; */
3705 0b_00000000,
3706 0b_00000000,
3707 0b_00110000,
3708 0b_00110000,
3709 0b_00000000,
3710 0b_01110000,
3711 0b_00110000,
3712 0b_01100000,
3713 /* < */
3714 0b_00011000,
3715 0b_00110000,
3716 0b_01100000,
3717 0b_11000000,
3718 0b_01100000,
3719 0b_00110000,
3720 0b_00011000,
3721 0b_00000000,
3722 /* = */
3723 0b_00000000,
3724 0b_00000000,
3725 0b_11111100,
3726 0b_00000000,
3727 0b_11111100,
3728 0b_00000000,
3729 0b_00000000,
3730 0b_00000000,
3731 /* > */
3732 0b_01100000,
3733 0b_00110000,
3734 0b_00011000,
3735 0b_00001100,
3736 0b_00011000,
3737 0b_00110000,
3738 0b_01100000,
3739 0b_00000000,
3740 /* ? */
3741 0b_01111000,
3742 0b_11001100,
3743 0b_00001100,
3744 0b_00011000,
3745 0b_00110000,
3746 0b_00000000,
3747 0b_00110000,
3748 0b_00000000,
3749 /* @ */
3750 0b_01111100,
3751 0b_11000110,
3752 0b_11011110,
3753 0b_11011110,
3754 0b_11011110,
3755 0b_11000000,
3756 0b_01111000,
3757 0b_00000000,
3758 /* A */
3759 0b_00110000,
3760 0b_01111000,
3761 0b_11001100,
3762 0b_11001100,
3763 0b_11111100,
3764 0b_11001100,
3765 0b_11001100,
3766 0b_00000000,
3767 /* B */
3768 0b_11111100,
3769 0b_01100110,
3770 0b_01100110,
3771 0b_01111100,
3772 0b_01100110,
3773 0b_01100110,
3774 0b_11111100,
3775 0b_00000000,
3776 /* C */
3777 0b_00111100,
3778 0b_01100110,
3779 0b_11000000,
3780 0b_11000000,
3781 0b_11000000,
3782 0b_01100110,
3783 0b_00111100,
3784 0b_00000000,
3785 /* D */
3786 0b_11111100,
3787 0b_01101100,
3788 0b_01100110,
3789 0b_01100110,
3790 0b_01100110,
3791 0b_01101100,
3792 0b_11111100,
3793 0b_00000000,
3794 /* E */
3795 0b_11111110,
3796 0b_01100010,
3797 0b_01101000,
3798 0b_01111000,
3799 0b_01101000,
3800 0b_01100010,
3801 0b_11111110,
3802 0b_00000000,
3803 /* F */
3804 0b_11111110,
3805 0b_01100010,
3806 0b_01101000,
3807 0b_01111000,
3808 0b_01101000,
3809 0b_01100000,
3810 0b_11110000,
3811 0b_00000000,
3812 /* G */
3813 0b_00111100,
3814 0b_01100110,
3815 0b_11000000,
3816 0b_11000000,
3817 0b_11001110,
3818 0b_01100110,
3819 0b_00111110,
3820 0b_00000000,
3821 /* H */
3822 0b_11001100,
3823 0b_11001100,
3824 0b_11001100,
3825 0b_11111100,
3826 0b_11001100,
3827 0b_11001100,
3828 0b_11001100,
3829 0b_00000000,
3830 /* I */
3831 0b_01111000,
3832 0b_00110000,
3833 0b_00110000,
3834 0b_00110000,
3835 0b_00110000,
3836 0b_00110000,
3837 0b_01111000,
3838 0b_00000000,
3839 /* J */
3840 0b_00011110,
3841 0b_00001100,
3842 0b_00001100,
3843 0b_00001100,
3844 0b_11001100,
3845 0b_11001100,
3846 0b_01111000,
3847 0b_00000000,
3848 /* K */
3849 0b_11100110,
3850 0b_01100110,
3851 0b_01101100,
3852 0b_01111000,
3853 0b_01101100,
3854 0b_01100110,
3855 0b_11100110,
3856 0b_00000000,
3857 /* L */
3858 0b_11110000,
3859 0b_01100000,
3860 0b_01100000,
3861 0b_01100000,
3862 0b_01100010,
3863 0b_01100110,
3864 0b_11111110,
3865 0b_00000000,
3866 /* M */
3867 0b_11000110,
3868 0b_11101110,
3869 0b_11111110,
3870 0b_11010110,
3871 0b_11000110,
3872 0b_11000110,
3873 0b_11000110,
3874 0b_00000000,
3875 /* N */
3876 0b_11000110,
3877 0b_11100110,
3878 0b_11110110,
3879 0b_11011110,
3880 0b_11001110,
3881 0b_11000110,
3882 0b_11000110,
3883 0b_00000000,
3884 /* O */
3885 0b_00111000,
3886 0b_01101100,
3887 0b_11000110,
3888 0b_11000110,
3889 0b_11000110,
3890 0b_01101100,
3891 0b_00111000,
3892 0b_00000000,
3893 /* P */
3894 0b_11111100,
3895 0b_01100110,
3896 0b_01100110,
3897 0b_01111100,
3898 0b_01100000,
3899 0b_01100000,
3900 0b_11110000,
3901 0b_00000000,
3902 /* Q */
3903 0b_01111000,
3904 0b_11001100,
3905 0b_11001100,
3906 0b_11001100,
3907 0b_11011100,
3908 0b_01111000,
3909 0b_00011100,
3910 0b_00000000,
3911 /* R */
3912 0b_11111100,
3913 0b_01100110,
3914 0b_01100110,
3915 0b_01111100,
3916 0b_01111000,
3917 0b_01101100,
3918 0b_11100110,
3919 0b_00000000,
3920 /* S */
3921 0b_01111000,
3922 0b_11001100,
3923 0b_11100000,
3924 0b_00111000,
3925 0b_00011100,
3926 0b_11001100,
3927 0b_01111000,
3928 0b_00000000,
3929 /* T */
3930 0b_11111100,
3931 0b_10110100,
3932 0b_00110000,
3933 0b_00110000,
3934 0b_00110000,
3935 0b_00110000,
3936 0b_01111000,
3937 0b_00000000,
3938 /* U */
3939 0b_11001100,
3940 0b_11001100,
3941 0b_11001100,
3942 0b_11001100,
3943 0b_11001100,
3944 0b_11001100,
3945 0b_11111100,
3946 0b_00000000,
3947 /* V */
3948 0b_11001100,
3949 0b_11001100,
3950 0b_11001100,
3951 0b_11001100,
3952 0b_11001100,
3953 0b_01111000,
3954 0b_00110000,
3955 0b_00000000,
3956 /* W */
3957 0b_11000110,
3958 0b_11000110,
3959 0b_11000110,
3960 0b_11010110,
3961 0b_11111110,
3962 0b_11101110,
3963 0b_11000110,
3964 0b_00000000,
3965 /* X */
3966 0b_11000110,
3967 0b_11000110,
3968 0b_01101100,
3969 0b_00111000,
3970 0b_01101100,
3971 0b_11000110,
3972 0b_11000110,
3973 0b_00000000,
3974 /* Y */
3975 0b_11001100,
3976 0b_11001100,
3977 0b_11001100,
3978 0b_01111000,
3979 0b_00110000,
3980 0b_00110000,
3981 0b_01111000,
3982 0b_00000000,
3983 /* Z */
3984 0b_11111110,
3985 0b_11001100,
3986 0b_10011000,
3987 0b_00110000,
3988 0b_01100010,
3989 0b_11000110,
3990 0b_11111110,
3991 0b_00000000,
3992 /* [ */
3993 0b_01111000,
3994 0b_01100000,
3995 0b_01100000,
3996 0b_01100000,
3997 0b_01100000,
3998 0b_01100000,
3999 0b_01111000,
4000 0b_00000000,
4001 /* \ */
4002 0b_11000000,
4003 0b_01100000,
4004 0b_00110000,
4005 0b_00011000,
4006 0b_00001100,
4007 0b_00000110,
4008 0b_00000010,
4009 0b_00000000,
4010 /* ] */
4011 0b_01111000,
4012 0b_00011000,
4013 0b_00011000,
4014 0b_00011000,
4015 0b_00011000,
4016 0b_00011000,
4017 0b_01111000,
4018 0b_00000000,
4019 /* ^ */
4020 0b_00010000,
4021 0b_00111000,
4022 0b_01101100,
4023 0b_11000110,
4024 0b_00000000,
4025 0b_00000000,
4026 0b_00000000,
4027 0b_00000000,
4028 /* _ */
4029 0b_00000000,
4030 0b_00000000,
4031 0b_00000000,
4032 0b_00000000,
4033 0b_00000000,
4034 0b_00000000,
4035 0b_00000000,
4036 0b_11111111,
4037 /* ` */
4038 0b_00110000,
4039 0b_00110000,
4040 0b_00011000,
4041 0b_00000000,
4042 0b_00000000,
4043 0b_00000000,
4044 0b_00000000,
4045 0b_00000000,
4046 /* a */
4047 0b_00000000,
4048 0b_00000000,
4049 0b_01111000,
4050 0b_00001100,
4051 0b_01111100,
4052 0b_11001100,
4053 0b_01110110,
4054 0b_00000000,
4055 /* b */
4056 0b_11100000,
4057 0b_01100000,
4058 0b_01111100,
4059 0b_01100110,
4060 0b_01100110,
4061 0b_01100110,
4062 0b_10111100,
4063 0b_00000000,
4064 /* c */
4065 0b_00000000,
4066 0b_00000000,
4067 0b_01111000,
4068 0b_11001100,
4069 0b_11000000,
4070 0b_11001100,
4071 0b_01111000,
4072 0b_00000000,
4073 /* d */
4074 0b_00011100,
4075 0b_00001100,
4076 0b_00001100,
4077 0b_01111100,
4078 0b_11001100,
4079 0b_11001100,
4080 0b_01110110,
4081 0b_00000000,
4082 /* e */
4083 0b_00000000,
4084 0b_00000000,
4085 0b_01111000,
4086 0b_11001100,
4087 0b_11111100,
4088 0b_11000000,
4089 0b_01111000,
4090 0b_00000000,
4091 /* f */
4092 0b_00111000,
4093 0b_01101100,
4094 0b_01100000,
4095 0b_11110000,
4096 0b_01100000,
4097 0b_01100000,
4098 0b_11110000,
4099 0b_00000000,
4100 /* g */
4101 0b_00000000,
4102 0b_00000000,
4103 0b_01110110,
4104 0b_11001100,
4105 0b_11001100,
4106 0b_01111100,
4107 0b_00001100,
4108 0b_11111000,
4109 /* h */
4110 0b_11100000,
4111 0b_01100000,
4112 0b_01101100,
4113 0b_01110110,
4114 0b_01100110,
4115 0b_01100110,
4116 0b_11100110,
4117 0b_00000000,
4118 /* i */
4119 0b_00110000,
4120 0b_00000000,
4121 0b_01110000,
4122 0b_00110000,
4123 0b_00110000,
4124 0b_00110000,
4125 0b_01111000,
4126 0b_00000000,
4127 /* j */
4128 0b_00011000,
4129 0b_00000000,
4130 0b_01111000,
4131 0b_00011000,
4132 0b_00011000,
4133 0b_00011000,
4134 0b_11011000,
4135 0b_01110000,
4136 /* k */
4137 0b_11100000,
4138 0b_01100000,
4139 0b_01100110,
4140 0b_01101100,
4141 0b_01111000,
4142 0b_01101100,
4143 0b_11100110,
4144 0b_00000000,
4145 /* l */
4146 0b_01110000,
4147 0b_00110000,
4148 0b_00110000,
4149 0b_00110000,
4150 0b_00110000,
4151 0b_00110000,
4152 0b_01111000,
4153 0b_00000000,
4154 /* m */
4155 0b_00000000,
4156 0b_00000000,
4157 0b_11101100,
4158 0b_11111110,
4159 0b_11010110,
4160 0b_11000110,
4161 0b_11000110,
4162 0b_00000000,
4163 /* n */
4164 0b_00000000,
4165 0b_00000000,
4166 0b_11111000,
4167 0b_11001100,
4168 0b_11001100,
4169 0b_11001100,
4170 0b_11001100,
4171 0b_00000000,
4172 /* o */
4173 0b_00000000,
4174 0b_00000000,
4175 0b_01111000,
4176 0b_11001100,
4177 0b_11001100,
4178 0b_11001100,
4179 0b_01111000,
4180 0b_00000000,
4181 /* p */
4182 0b_00000000,
4183 0b_00000000,
4184 0b_11011100,
4185 0b_01100110,
4186 0b_01100110,
4187 0b_01111100,
4188 0b_01100000,
4189 0b_11110000,
4190 /* q */
4191 0b_00000000,
4192 0b_00000000,
4193 0b_01110110,
4194 0b_11001100,
4195 0b_11001100,
4196 0b_01111100,
4197 0b_00001100,
4198 0b_00011110,
4199 /* r */
4200 0b_00000000,
4201 0b_00000000,
4202 0b_11011000,
4203 0b_01101100,
4204 0b_01101100,
4205 0b_01100000,
4206 0b_11110000,
4207 0b_00000000,
4208 /* s */
4209 0b_00000000,
4210 0b_00000000,
4211 0b_01111100,
4212 0b_11000000,
4213 0b_01111000,
4214 0b_00001100,
4215 0b_11111000,
4216 0b_00000000,
4217 /* t */
4218 0b_00010000,
4219 0b_00110000,
4220 0b_01111100,
4221 0b_00110000,
4222 0b_00110000,
4223 0b_00110100,
4224 0b_00011000,
4225 0b_00000000,
4226 /* u */
4227 0b_00000000,
4228 0b_00000000,
4229 0b_11001100,
4230 0b_11001100,
4231 0b_11001100,
4232 0b_11001100,
4233 0b_01110110,
4234 0b_00000000,
4235 /* v */
4236 0b_00000000,
4237 0b_00000000,
4238 0b_11001100,
4239 0b_11001100,
4240 0b_11001100,
4241 0b_01111000,
4242 0b_00110000,
4243 0b_00000000,
4244 /* w */
4245 0b_00000000,
4246 0b_00000000,
4247 0b_11000110,
4248 0b_11000110,
4249 0b_11010110,
4250 0b_11111110,
4251 0b_01101100,
4252 0b_00000000,
4253 /* x */
4254 0b_00000000,
4255 0b_00000000,
4256 0b_11000110,
4257 0b_01101100,
4258 0b_00111000,
4259 0b_01101100,
4260 0b_11000110,
4261 0b_00000000,
4262 /* y */
4263 0b_00000000,
4264 0b_00000000,
4265 0b_11001100,
4266 0b_11001100,
4267 0b_11001100,
4268 0b_01111100,
4269 0b_00001100,
4270 0b_11111000,
4271 /* z */
4272 0b_00000000,
4273 0b_00000000,
4274 0b_11111100,
4275 0b_10011000,
4276 0b_00110000,
4277 0b_01100100,
4278 0b_11111100,
4279 0b_00000000,
4280 /* { */
4281 0b_00011100,
4282 0b_00110000,
4283 0b_00110000,
4284 0b_11100000,
4285 0b_00110000,
4286 0b_00110000,
4287 0b_00011100,
4288 0b_00000000,
4289 /* | */
4290 0b_00011000,
4291 0b_00011000,
4292 0b_00011000,
4293 0b_00000000,
4294 0b_00011000,
4295 0b_00011000,
4296 0b_00011000,
4297 0b_00000000,
4298 /* } */
4299 0b_11100000,
4300 0b_00110000,
4301 0b_00110000,
4302 0b_00011100,
4303 0b_00110000,
4304 0b_00110000,
4305 0b_11100000,
4306 0b_00000000,
4307 /* ~ */
4308 0b_01110110,
4309 0b_11011100,
4310 0b_00000000,
4311 0b_00000000,
4312 0b_00000000,
4313 0b_00000000,
4314 0b_00000000,
4315 0b_00000000,
4316 /* 0x7f */
4317 0b_00010000,
4318 0b_00111000,
4319 0b_01101100,
4320 0b_11000110,
4321 0b_11000110,
4322 0b_11000110,
4323 0b_11111110,
4324 0b_00000000,
4325 /* 0x80 */
4326 0b_01111000,
4327 0b_11001100,
4328 0b_11000000,
4329 0b_11001100,
4330 0b_01111000,
4331 0b_00011000,
4332 0b_00001100,
4333 0b_01111000,
4334 /* 0x81 */
4335 0b_00000000,
4336 0b_11001100,
4337 0b_00000000,
4338 0b_11001100,
4339 0b_11001100,
4340 0b_11001100,
4341 0b_01111110,
4342 0b_00000000,
4343 /* 0x82 */
4344 0b_00011100,
4345 0b_00000000,
4346 0b_01111000,
4347 0b_11001100,
4348 0b_11111100,
4349 0b_11000000,
4350 0b_01111000,
4351 0b_00000000,
4352 /* 0x83 */
4353 0b_01111110,
4354 0b_11000011,
4355 0b_00111100,
4356 0b_00000110,
4357 0b_00111110,
4358 0b_01100110,
4359 0b_00111111,
4360 0b_00000000,
4361 /* 0x84 */
4362 0b_11001100,
4363 0b_00000000,
4364 0b_01111000,
4365 0b_00001100,
4366 0b_01111100,
4367 0b_11001100,
4368 0b_01111110,
4369 0b_00000000,
4370 /* 0x85 */
4371 0b_11100000,
4372 0b_00000000,
4373 0b_01111000,
4374 0b_00001100,
4375 0b_01111100,
4376 0b_11001100,
4377 0b_01111110,
4378 0b_00000000,
4379 /* 0x86 */
4380 0b_00110000,
4381 0b_00110000,
4382 0b_01111000,
4383 0b_00001100,
4384 0b_01111100,
4385 0b_11001100,
4386 0b_01111110,
4387 0b_00000000,
4388 /* 0x87 */
4389 0b_00000000,
4390 0b_00000000,
4391 0b_01111100,
4392 0b_11000000,
4393 0b_11000000,
4394 0b_01111100,
4395 0b_00000110,
4396 0b_00111100,
4397 /* 0x88 */
4398 0b_01111110,
4399 0b_11000011,
4400 0b_00111100,
4401 0b_01100110,
4402 0b_01111110,
4403 0b_01100000,
4404 0b_00111100,
4405 0b_00000000,
4406 /* 0x89 */
4407 0b_11001100,
4408 0b_00000000,
4409 0b_01111000,
4410 0b_11001100,
4411 0b_11111100,
4412 0b_11000000,
4413 0b_01111000,
4414 0b_00000000,
4415 /* 0x8a */
4416 0b_11100000,
4417 0b_00000000,
4418 0b_01111000,
4419 0b_11001100,
4420 0b_11111100,
4421 0b_11000000,
4422 0b_01111000,
4423 0b_00000000,
4424 /* 0x8b */
4425 0b_11001100,
4426 0b_00000000,
4427 0b_01110000,
4428 0b_00110000,
4429 0b_00110000,
4430 0b_00110000,
4431 0b_01111000,
4432 0b_00000000,
4433 /* 0x8c */
4434 0b_01111100,
4435 0b_11000110,
4436 0b_00111000,
4437 0b_00011000,
4438 0b_00011000,
4439 0b_00011000,
4440 0b_00111100,
4441 0b_00000000,
4442 /* 0x8d */
4443 0b_11100000,
4444 0b_00000000,
4445 0b_01110000,
4446 0b_00110000,
4447 0b_00110000,
4448 0b_00110000,
4449 0b_01111000,
4450 0b_00000000,
4451 /* 0x8e */
4452 0b_11001100,
4453 0b_00110000,
4454 0b_01111000,
4455 0b_11001100,
4456 0b_11001100,
4457 0b_11111100,
4458 0b_11001100,
4459 0b_00000000,
4460 /* 0x8f */
4461 0b_00110000,
4462 0b_00110000,
4463 0b_00000000,
4464 0b_01111000,
4465 0b_11001100,
4466 0b_11111100,
4467 0b_11001100,
4468 0b_00000000,
4469 /* 0x90 */
4470 0b_00011100,
4471 0b_00000000,
4472 0b_11111100,
4473 0b_01100000,
4474 0b_01111000,
4475 0b_01100000,
4476 0b_11111100,
4477 0b_00000000,
4478 /* 0x91 */
4479 0b_00000000,
4480 0b_00000000,
4481 0b_01111111,
4482 0b_00001100,
4483 0b_01111111,
4484 0b_11001100,
4485 0b_01111111,
4486 0b_00000000,
4487 /* 0x92 */
4488 0b_00111110,
4489 0b_01101100,
4490 0b_11001100,
4491 0b_11111110,
4492 0b_11001100,
4493 0b_11001100,
4494 0b_11001110,
4495 0b_00000000,
4496 /* 0x93 */
4497 0b_01111000,
4498 0b_11001100,
4499 0b_00000000,
4500 0b_01111000,
4501 0b_11001100,
4502 0b_11001100,
4503 0b_01111000,
4504 0b_00000000,
4505 /* 0x94 */
4506 0b_00000000,
4507 0b_11001100,
4508 0b_00000000,
4509 0b_01111000,
4510 0b_11001100,
4511 0b_11001100,
4512 0b_01111000,
4513 0b_00000000,
4514 /* 0x95 */
4515 0b_00000000,
4516 0b_11100000,
4517 0b_00000000,
4518 0b_01111000,
4519 0b_11001100,
4520 0b_11001100,
4521 0b_01111000,
4522 0b_00000000,
4523 /* 0x96 */
4524 0b_01111000,
4525 0b_11001100,
4526 0b_00000000,
4527 0b_11001100,
4528 0b_11001100,
4529 0b_11001100,
4530 0b_01111110,
4531 0b_00000000,
4532 /* 0x97 */
4533 0b_00000000,
4534 0b_11100000,
4535 0b_00000000,
4536 0b_11001100,
4537 0b_11001100,
4538 0b_11001100,
4539 0b_01111110,
4540 0b_00000000,
4541 /* 0x98 */
4542 0b_00000000,
4543 0b_11001100,
4544 0b_00000000,
4545 0b_11001100,
4546 0b_11001100,
4547 0b_11111100,
4548 0b_00001100,
4549 0b_11111000,
4550 /* 0x99 */
4551 0b_11000110,
4552 0b_00111000,
4553 0b_01111100,
4554 0b_11000110,
4555 0b_11000110,
4556 0b_01111100,
4557 0b_00111000,
4558 0b_00000000,
4559 /* 0x9a */
4560 0b_11001100,
4561 0b_00000000,
4562 0b_11001100,
4563 0b_11001100,
4564 0b_11001100,
4565 0b_11001100,
4566 0b_01111000,
4567 0b_00000000,
4568 /* 0x9b */
4569 0b_00011000,
4570 0b_00011000,
4571 0b_01111110,
4572 0b_11000000,
4573 0b_11000000,
4574 0b_01111110,
4575 0b_00011000,
4576 0b_00011000,
4577 /* 0x9c */
4578 0b_00111000,
4579 0b_01101100,
4580 0b_01100100,
4581 0b_11110000,
4582 0b_01100000,
4583 0b_11100110,
4584 0b_11111100,
4585 0b_00000000,
4586 /* 0x9d */
4587 0b_11001100,
4588 0b_11001100,
4589 0b_01111000,
4590 0b_11111100,
4591 0b_00110000,
4592 0b_11111100,
4593 0b_00110000,
4594 0b_00000000,
4595 /* 0x9e */
4596 0b_11110000,
4597 0b_11011000,
4598 0b_11011000,
4599 0b_11110100,
4600 0b_11001100,
4601 0b_11011110,
4602 0b_11001100,
4603 0b_00001110,
4604 /* 0x9f */
4605 0b_00001110,
4606 0b_00011011,
4607 0b_00011000,
4608 0b_01111110,
4609 0b_00011000,
4610 0b_00011000,
4611 0b_11011000,
4612 0b_01110000,
4613 /* 0xa0 */
4614 0b_00011100,
4615 0b_00000000,
4616 0b_01111000,
4617 0b_00001100,
4618 0b_01111100,
4619 0b_11001100,
4620 0b_01111110,
4621 0b_00000000,
4622 /* 0xa1 */
4623 0b_00111000,
4624 0b_00000000,
4625 0b_01110000,
4626 0b_00110000,
4627 0b_00110000,
4628 0b_00110000,
4629 0b_01111000,
4630 0b_00000000,
4631 /* 0xa2 */
4632 0b_00000000,
4633 0b_00011100,
4634 0b_00000000,
4635 0b_01111000,
4636 0b_11001100,
4637 0b_11001100,
4638 0b_01111000,
4639 0b_00000000,
4640 /* 0xa3 */
4641 0b_00000000,
4642 0b_00011100,
4643 0b_00000000,
4644 0b_11001100,
4645 0b_11001100,
4646 0b_11001100,
4647 0b_01111110,
4648 0b_00000000,
4649 /* 0xa4 */
4650 0b_00000000,
4651 0b_11111000,
4652 0b_00000000,
4653 0b_11111000,
4654 0b_11001100,
4655 0b_11001100,
4656 0b_11001100,
4657 0b_00000000,
4658 /* 0xa5 */
4659 0b_11111100,
4660 0b_00000000,
4661 0b_11001100,
4662 0b_11101100,
4663 0b_11111100,
4664 0b_11011100,
4665 0b_11001100,
4666 0b_00000000,
4667 /* 0xa6 */
4668 0b_00111100,
4669 0b_01101100,
4670 0b_01101100,
4671 0b_00111110,
4672 0b_00000000,
4673 0b_01111110,
4674 0b_00000000,
4675 0b_00000000,
4676 /* 0xa7 */
4677 0b_00111100,
4678 0b_01100110,
4679 0b_01100110,
4680 0b_00111100,
4681 0b_00000000,
4682 0b_01111110,
4683 0b_00000000,
4684 0b_00000000,
4685 /* 0xa8 */
4686 0b_00110000,
4687 0b_00000000,
4688 0b_00110000,
4689 0b_01100000,
4690 0b_11000000,
4691 0b_11001100,
4692 0b_01111000,
4693 0b_00000000,
4694 /* 0xa9 */
4695 0b_00000000,
4696 0b_00000000,
4697 0b_00000000,
4698 0b_11111100,
4699 0b_11000000,
4700 0b_11000000,
4701 0b_00000000,
4702 0b_00000000,
4703 /* 0xaa */
4704 0b_00000000,
4705 0b_00000000,
4706 0b_00000000,
4707 0b_11111100,
4708 0b_00001100,
4709 0b_00001100,
4710 0b_00000000,
4711 0b_00000000,
4712 /* 0xab */
4713 0b_11000110,
4714 0b_11001100,
4715 0b_11011000,
4716 0b_00111110,
4717 0b_01100011,
4718 0b_11001110,
4719 0b_10011000,
4720 0b_00011111,
4721 /* 0xac */
4722 0b_11000110,
4723 0b_11001100,
4724 0b_11011000,
4725 0b_11110011,
4726 0b_01100111,
4727 0b_11001111,
4728 0b_10011111,
4729 0b_00000011,
4730 /* 0xad */
4731 0b_00000000,
4732 0b_00011000,
4733 0b_00000000,
4734 0b_00011000,
4735 0b_00011000,
4736 0b_00111100,
4737 0b_00111100,
4738 0b_00011000,
4739 /* 0xae */
4740 0b_00000000,
4741 0b_00110011,
4742 0b_01100110,
4743 0b_11001100,
4744 0b_01100110,
4745 0b_00110011,
4746 0b_00000000,
4747 0b_00000000,
4748 /* 0xaf */
4749 0b_00000000,
4750 0b_11001100,
4751 0b_01100110,
4752 0b_00110011,
4753 0b_01100110,
4754 0b_11001100,
4755 0b_00000000,
4756 0b_00000000,
4757 /* 0xb0 */
4758 0b_00100010,
4759 0b_10001000,
4760 0b_00100010,
4761 0b_10001000,
4762 0b_00100010,
4763 0b_10001000,
4764 0b_00100010,
4765 0b_10001000,
4766 /* 0xb1 */
4767 0b_01010101,
4768 0b_10101010,
4769 0b_01010101,
4770 0b_10101010,
4771 0b_01010101,
4772 0b_10101010,
4773 0b_01010101,
4774 0b_10101010,
4775 /* 0xb2 */
4776 0b_11011100,
4777 0b_01110110,
4778 0b_11011100,
4779 0b_01110110,
4780 0b_11011100,
4781 0b_01110110,
4782 0b_11011100,
4783 0b_01110110,
4784 /* 0xb3 */
4785 0b_00011000,
4786 0b_00011000,
4787 0b_00011000,
4788 0b_00011000,
4789 0b_00011000,
4790 0b_00011000,
4791 0b_00011000,
4792 0b_00011000,
4793 /* 0xb4 */
4794 0b_00011000,
4795 0b_00011000,
4796 0b_00011000,
4797 0b_00011000,
4798 0b_11111000,
4799 0b_00011000,
4800 0b_00011000,
4801 0b_00011000,
4802 /* 0xb5 */
4803 0b_00011000,
4804 0b_00011000,
4805 0b_11111000,
4806 0b_00011000,
4807 0b_11111000,
4808 0b_00011000,
4809 0b_00011000,
4810 0b_00011000,
4811 /* 0xb6 */
4812 0b_00110110,
4813 0b_00110110,
4814 0b_00110110,
4815 0b_00110110,
4816 0b_11110110,
4817 0b_00110110,
4818 0b_00110110,
4819 0b_00110110,
4820 /* 0xb7 */
4821 0b_00000000,
4822 0b_00000000,
4823 0b_00000000,
4824 0b_00000000,
4825 0b_11111110,
4826 0b_00110110,
4827 0b_00110110,
4828 0b_00110110,
4829 /* 0xb8 */
4830 0b_00000000,
4831 0b_00000000,
4832 0b_11111000,
4833 0b_00011000,
4834 0b_11111000,
4835 0b_00011000,
4836 0b_00011000,
4837 0b_00011000,
4838 /* 0xb9 */
4839 0b_00110110,
4840 0b_00110110,
4841 0b_11110110,
4842 0b_00000110,
4843 0b_11110110,
4844 0b_00110110,
4845 0b_00110110,
4846 0b_00110110,
4847 /* 0xba */
4848 0b_00110110,
4849 0b_00110110,
4850 0b_00110110,
4851 0b_00110110,
4852 0b_00110110,
4853 0b_00110110,
4854 0b_00110110,
4855 0b_00110110,
4856 /* 0xbb */
4857 0b_00000000,
4858 0b_00000000,
4859 0b_11111110,
4860 0b_00000110,
4861 0b_11110110,
4862 0b_00110110,
4863 0b_00110110,
4864 0b_00110110,
4865 /* 0xbc */
4866 0b_00110110,
4867 0b_00110110,
4868 0b_11110110,
4869 0b_00000110,
4870 0b_11111110,
4871 0b_00000000,
4872 0b_00000000,
4873 0b_00000000,
4874 /* 0xbd */
4875 0b_00110110,
4876 0b_00110110,
4877 0b_00110110,
4878 0b_00110110,
4879 0b_11111110,
4880 0b_00000000,
4881 0b_00000000,
4882 0b_00000000,
4883 /* 0xbe */
4884 0b_00011000,
4885 0b_00011000,
4886 0b_11111000,
4887 0b_00011000,
4888 0b_11111000,
4889 0b_00000000,
4890 0b_00000000,
4891 0b_00000000,
4892 /* 0xbf */
4893 0b_00000000,
4894 0b_00000000,
4895 0b_00000000,
4896 0b_00000000,
4897 0b_11111000,
4898 0b_00011000,
4899 0b_00011000,
4900 0b_00011000,
4901 /* 0xc0 */
4902 0b_00011000,
4903 0b_00011000,
4904 0b_00011000,
4905 0b_00011000,
4906 0b_00011111,
4907 0b_00000000,
4908 0b_00000000,
4909 0b_00000000,
4910 /* 0xc1 */
4911 0b_00011000,
4912 0b_00011000,
4913 0b_00011000,
4914 0b_00011000,
4915 0b_11111111,
4916 0b_00000000,
4917 0b_00000000,
4918 0b_00000000,
4919 /* 0xc2 */
4920 0b_00000000,
4921 0b_00000000,
4922 0b_00000000,
4923 0b_00000000,
4924 0b_11111111,
4925 0b_00011000,
4926 0b_00011000,
4927 0b_00011000,
4928 /* 0xc3 */
4929 0b_00011000,
4930 0b_00011000,
4931 0b_00011000,
4932 0b_00011000,
4933 0b_00011111,
4934 0b_00011000,
4935 0b_00011000,
4936 0b_00011000,
4937 /* 0xc4 */
4938 0b_00000000,
4939 0b_00000000,
4940 0b_00000000,
4941 0b_00000000,
4942 0b_11111111,
4943 0b_00000000,
4944 0b_00000000,
4945 0b_00000000,
4946 /* 0xc5 */
4947 0b_00011000,
4948 0b_00011000,
4949 0b_00011000,
4950 0b_00011000,
4951 0b_11111111,
4952 0b_00011000,
4953 0b_00011000,
4954 0b_00011000,
4955 /* 0xc6 */
4956 0b_00011000,
4957 0b_00011000,
4958 0b_00011111,
4959 0b_00011000,
4960 0b_00011111,
4961 0b_00011000,
4962 0b_00011000,
4963 0b_00011000,
4964 /* 0xc7 */
4965 0b_00110110,
4966 0b_00110110,
4967 0b_00110110,
4968 0b_00110110,
4969 0b_00110111,
4970 0b_00110110,
4971 0b_00110110,
4972 0b_00110110,
4973 /* 0xc8 */
4974 0b_00110110,
4975 0b_00110110,
4976 0b_00110111,
4977 0b_00110000,
4978 0b_00111111,
4979 0b_00000000,
4980 0b_00000000,
4981 0b_00000000,
4982 /* 0xc9 */
4983 0b_00000000,
4984 0b_00000000,
4985 0b_00111111,
4986 0b_00110000,
4987 0b_00110111,
4988 0b_00110110,
4989 0b_00110110,
4990 0b_00110110,
4991 /* 0xca */
4992 0b_00110110,
4993 0b_00110110,
4994 0b_11110111,
4995 0b_00000000,
4996 0b_11111111,
4997 0b_00000000,
4998 0b_00000000,
4999 0b_00000000,
5000 /* 0xcb */
5001 0b_00000000,
5002 0b_00000000,
5003 0b_11111111,
5004 0b_00000000,
5005 0b_11110111,
5006 0b_00110110,
5007 0b_00110110,
5008 0b_00110110,
5009 /* 0xcc */
5010 0b_00110110,
5011 0b_00110110,
5012 0b_00110111,
5013 0b_00110000,
5014 0b_00110111,
5015 0b_00110110,
5016 0b_00110110,
5017 0b_00110110,
5018 /* 0xcd */
5019 0b_00000000,
5020 0b_00000000,
5021 0b_11111111,
5022 0b_00000000,
5023 0b_11111111,
5024 0b_00000000,
5025 0b_00000000,
5026 0b_00000000,
5027 /* 0xce */
5028 0b_00110110,
5029 0b_00110110,
5030 0b_11110111,
5031 0b_00000000,
5032 0b_11110111,
5033 0b_00110110,
5034 0b_00110110,
5035 0b_00110110,
5036 /* 0xcf */
5037 0b_00011000,
5038 0b_00011000,
5039 0b_11111111,
5040 0b_00000000,
5041 0b_11111111,
5042 0b_00000000,
5043 0b_00000000,
5044 0b_00000000,
5045 /* 0xd0 */
5046 0b_00110110,
5047 0b_00110110,
5048 0b_00110110,
5049 0b_00110110,
5050 0b_11111111,
5051 0b_00000000,
5052 0b_00000000,
5053 0b_00000000,
5054 /* 0xd1 */
5055 0b_00000000,
5056 0b_00000000,
5057 0b_11111111,
5058 0b_00000000,
5059 0b_11111111,
5060 0b_00011000,
5061 0b_00011000,
5062 0b_00011000,
5063 /* 0xd2 */
5064 0b_00000000,
5065 0b_00000000,
5066 0b_00000000,
5067 0b_00000000,
5068 0b_11111111,
5069 0b_00110110,
5070 0b_00110110,
5071 0b_00110110,
5072 /* 0xd3 */
5073 0b_00110110,
5074 0b_00110110,
5075 0b_00110110,
5076 0b_00110110,
5077 0b_00111111,
5078 0b_00000000,
5079 0b_00000000,
5080 0b_00000000,
5081 /* 0xd4 */
5082 0b_00011000,
5083 0b_00011000,
5084 0b_00011111,
5085 0b_00011000,
5086 0b_00011111,
5087 0b_00000000,
5088 0b_00000000,
5089 0b_00000000,
5090 /* 0xd5 */
5091 0b_00000000,
5092 0b_00000000,
5093 0b_00011111,
5094 0b_00011000,
5095 0b_00011111,
5096 0b_00011000,
5097 0b_00011000,
5098 0b_00011000,
5099 /* 0xd6 */
5100 0b_00000000,
5101 0b_00000000,
5102 0b_00000000,
5103 0b_00000000,
5104 0b_00111111,
5105 0b_00110110,
5106 0b_00110110,
5107 0b_00110110,
5108 /* 0xd7 */
5109 0b_00110110,
5110 0b_00110110,
5111 0b_00110110,
5112 0b_00110110,
5113 0b_11110111,
5114 0b_00110110,
5115 0b_00110110,
5116 0b_00110110,
5117 /* 0xd8 */
5118 0b_00011000,
5119 0b_00011000,
5120 0b_11111111,
5121 0b_00000000,
5122 0b_11111111,
5123 0b_00011000,
5124 0b_00011000,
5125 0b_00011000,
5126 /* 0xd9 */
5127 0b_00011000,
5128 0b_00011000,
5129 0b_00011000,
5130 0b_00011000,
5131 0b_11111000,
5132 0b_00000000,
5133 0b_00000000,
5134 0b_00000000,
5135 /* 0xda */
5136 0b_00000000,
5137 0b_00000000,
5138 0b_00000000,
5139 0b_00000000,
5140 0b_00011111,
5141 0b_00011000,
5142 0b_00011000,
5143 0b_00011000,
5144 /* 0xdb */
5145 0b_11111111,
5146 0b_11111111,
5147 0b_11111111,
5148 0b_11111111,
5149 0b_11111111,
5150 0b_11111111,
5151 0b_11111111,
5152 0b_11111111,
5153 /* 0xdc */
5154 0b_00000000,
5155 0b_00000000,
5156 0b_00000000,
5157 0b_00000000,
5158 0b_11111111,
5159 0b_11111111,
5160 0b_11111111,
5161 0b_11111111,
5162 /* 0xdd */
5163 0b_11110000,
5164 0b_11110000,
5165 0b_11110000,
5166 0b_11110000,
5167 0b_11110000,
5168 0b_11110000,
5169 0b_11110000,
5170 0b_11110000,
5171 /* 0xde */
5172 0b_00001111,
5173 0b_00001111,
5174 0b_00001111,
5175 0b_00001111,
5176 0b_00001111,
5177 0b_00001111,
5178 0b_00001111,
5179 0b_00001111,
5180 /* 0xdf */
5181 0b_11111111,
5182 0b_11111111,
5183 0b_11111111,
5184 0b_11111111,
5185 0b_00000000,
5186 0b_00000000,
5187 0b_00000000,
5188 0b_00000000,
5189 /* 0xe0 */
5190 0b_00000000,
5191 0b_00000000,
5192 0b_01110110,
5193 0b_11011100,
5194 0b_11001000,
5195 0b_11011100,
5196 0b_01110110,
5197 0b_00000000,
5198 /* 0xe1 */
5199 0b_00000000,
5200 0b_01111000,
5201 0b_11001100,
5202 0b_11111000,
5203 0b_11001100,
5204 0b_11111000,
5205 0b_11000000,
5206 0b_11000000,
5207 /* 0xe2 */
5208 0b_00000000,
5209 0b_11111110,
5210 0b_11000110,
5211 0b_11000000,
5212 0b_11000000,
5213 0b_11000000,
5214 0b_11000000,
5215 0b_00000000,
5216 /* 0xe3 */
5217 0b_00000000,
5218 0b_11111110,
5219 0b_01101100,
5220 0b_01101100,
5221 0b_01101100,
5222 0b_01101100,
5223 0b_01101100,
5224 0b_00000000,
5225 /* 0xe4 */
5226 0b_11111110,
5227 0b_01100110,
5228 0b_00110000,
5229 0b_00011000,
5230 0b_00110000,
5231 0b_01100110,
5232 0b_11111110,
5233 0b_00000000,
5234 /* 0xe5 */
5235 0b_00000000,
5236 0b_00000000,
5237 0b_01111110,
5238 0b_11001100,
5239 0b_11001100,
5240 0b_11001100,
5241 0b_01111000,
5242 0b_00000000,
5243 /* 0xe6 */
5244 0b_00000000,
5245 0b_01100110,
5246 0b_01100110,
5247 0b_01100110,
5248 0b_01100110,
5249 0b_01111100,
5250 0b_01100000,
5251 0b_11000000,
5252 /* 0xe7 */
5253 0b_00000000,
5254 0b_01110110,
5255 0b_11011100,
5256 0b_00011000,
5257 0b_00011000,
5258 0b_00011000,
5259 0b_00011000,
5260 0b_00000000,
5261 /* 0xe8 */
5262 0b_11111100,
5263 0b_00110000,
5264 0b_01111000,
5265 0b_11001100,
5266 0b_11001100,
5267 0b_01111000,
5268 0b_00110000,
5269 0b_11111100,
5270 /* 0xe9 */
5271 0b_00111000,
5272 0b_01101100,
5273 0b_11000110,
5274 0b_11111110,
5275 0b_11000110,
5276 0b_01101100,
5277 0b_00111000,
5278 0b_00000000,
5279 /* 0xea */
5280 0b_00111000,
5281 0b_01101100,
5282 0b_11000110,
5283 0b_11000110,
5284 0b_01101100,
5285 0b_01101100,
5286 0b_11101110,
5287 0b_00000000,
5288 /* 0xeb */
5289 0b_00011100,
5290 0b_00110000,
5291 0b_00011000,
5292 0b_01111100,
5293 0b_11001100,
5294 0b_11001100,
5295 0b_01111000,
5296 0b_00000000,
5297 /* 0xec */
5298 0b_00000000,
5299 0b_00000000,
5300 0b_01111110,
5301 0b_11011011,
5302 0b_11011011,
5303 0b_01111110,
5304 0b_00000000,
5305 0b_00000000,
5306 /* 0xed */
5307 0b_00000110,
5308 0b_00001100,
5309 0b_01111110,
5310 0b_11011011,
5311 0b_11011011,
5312 0b_01111110,
5313 0b_01100000,
5314 0b_11000000,
5315 /* 0xee */
5316 0b_00111100,
5317 0b_01100000,
5318 0b_11000000,
5319 0b_11111100,
5320 0b_11000000,
5321 0b_01100000,
5322 0b_00111100,
5323 0b_00000000,
5324 /* 0xef */
5325 0b_01111000,
5326 0b_11001100,
5327 0b_11001100,
5328 0b_11001100,
5329 0b_11001100,
5330 0b_11001100,
5331 0b_11001100,
5332 0b_00000000,
5333 /* 0xf0 */
5334 0b_00000000,
5335 0b_11111100,
5336 0b_00000000,
5337 0b_11111100,
5338 0b_00000000,
5339 0b_11111100,
5340 0b_00000000,
5341 0b_00000000,
5342 /* 0xf1 */
5343 0b_00110000,
5344 0b_00110000,
5345 0b_11111100,
5346 0b_00110000,
5347 0b_00110000,
5348 0b_00000000,
5349 0b_11111100,
5350 0b_00000000,
5351 /* 0xf2 */
5352 0b_01100000,
5353 0b_00110000,
5354 0b_00011000,
5355 0b_00110000,
5356 0b_01100000,
5357 0b_00000000,
5358 0b_11111100,
5359 0b_00000000,
5360 /* 0xf3 */
5361 0b_00011000,
5362 0b_00110000,
5363 0b_01100000,
5364 0b_00110000,
5365 0b_00011000,
5366 0b_00000000,
5367 0b_11111100,
5368 0b_00000000,
5369 /* 0xf4 */
5370 0b_00001110,
5371 0b_00011011,
5372 0b_00011011,
5373 0b_00011000,
5374 0b_00011000,
5375 0b_00011000,
5376 0b_00011000,
5377 0b_00011000,
5378 /* 0xf5 */
5379 0b_00011000,
5380 0b_00011000,
5381 0b_00011000,
5382 0b_00011000,
5383 0b_00011000,
5384 0b_11011000,
5385 0b_11011000,
5386 0b_01110000,
5387 /* 0xf6 */
5388 0b_00110000,
5389 0b_00110000,
5390 0b_00000000,
5391 0b_11111100,
5392 0b_00000000,
5393 0b_00110000,
5394 0b_00110000,
5395 0b_00000000,
5396 /* 0xf7 */
5397 0b_00000000,
5398 0b_01110010,
5399 0b_10011100,
5400 0b_00000000,
5401 0b_01110010,
5402 0b_10011100,
5403 0b_00000000,
5404 0b_00000000,
5405 /* 0xf8 */
5406 0b_00111000,
5407 0b_01101100,
5408 0b_01101100,
5409 0b_00111000,
5410 0b_00000000,
5411 0b_00000000,
5412 0b_00000000,
5413 0b_00000000,
5414 /* 0xf9 */
5415 0b_00000000,
5416 0b_00000000,
5417 0b_00000000,
5418 0b_00011000,
5419 0b_00011000,
5420 0b_00000000,
5421 0b_00000000,
5422 0b_00000000,
5423 /* 0xfa */
5424 0b_00000000,
5425 0b_00000000,
5426 0b_00000000,
5427 0b_00000000,
5428 0b_00011000,
5429 0b_00000000,
5430 0b_00000000,
5431 0b_00000000,
5432 /* 0xfb */
5433 0b_00001111,
5434 0b_00001100,
5435 0b_00001100,
5436 0b_00001100,
5437 0b_11101100,
5438 0b_01101100,
5439 0b_00111100,
5440 0b_00011100,
5441 /* 0xfc */
5442 0b_01111000,
5443 0b_01101100,
5444 0b_01101100,
5445 0b_01101100,
5446 0b_01101100,
5447 0b_00000000,
5448 0b_00000000,
5449 0b_00000000,
5450 /* 0xfd */
5451 0b_01111000,
5452 0b_00001100,
5453 0b_00111000,
5454 0b_01100000,
5455 0b_01111100,
5456 0b_00000000,
5457 0b_00000000,
5458 0b_00000000,
5459 /* 0xfe */
5460 0b_00000000,
5461 0b_00000000,
5462 0b_00111100,
5463 0b_00111100,
5464 0b_00111100,
5465 0b_00111100,
5466 0b_00000000,
5467 0b_00000000,
5468 /* 0xff */
5469 0b_11111111,
5470 0b_11111111,
5471 0b_11111111,
5472 0b_11111111,
5473 0b_11111111,
5474 0b_11111111,
5475 0b_11111111,
5476 0b_11111111,
5480 // bits 0..3: width
5481 // bits 4..7: lshift
5482 public immutable ubyte[256] dosFontPropWidth = () {
5483 ubyte[256] res;
5484 foreach (immutable cnum; 0..256) {
5485 import core.bitop : bsf, bsr;
5486 immutable doshift =
5487 (cnum >= 32 && cnum <= 127) ||
5488 (cnum >= 143 && cnum <= 144) ||
5489 (cnum >= 166 && cnum <= 167) ||
5490 (cnum >= 192 && cnum <= 255);
5491 int shift = 0;
5492 if (doshift) {
5493 shift = 8;
5494 foreach (immutable dy; 0..8) {
5495 immutable b = dosFont8[cnum*8+dy];
5496 if (b) {
5497 immutable mn = 7-bsr(b);
5498 if (mn < shift) shift = mn;
5502 ubyte wdt = 0;
5503 foreach (immutable dy; 0..8) {
5504 immutable b = (dosFont8[cnum*8+dy]<<shift);
5505 immutable cwdt = (b ? 8-bsf(b) : 0);
5506 if (cwdt > wdt) wdt = cast(ubyte)cwdt;
5508 switch (cnum) {
5509 case 0: wdt = 8; break; // 8px space
5510 case 32: wdt = 5; break; // 5px space
5511 case 48: .. case 57: wdt = 5; break; // digits are monospaced
5512 case 176: .. case 223: wdt = 8; break; // pseudographics (frames, etc)
5513 default:
5515 res[cnum] = (wdt&0x0f)|((shift<<4)&0xf0);
5517 return res;
5518 }();
5521 static public immutable ushort[256*10] dosFont10 = [
5522 /* 0x00 */
5523 0b_0000000000_000000,
5524 0b_0000000000_000000,
5525 0b_0000000000_000000,
5526 0b_0000000000_000000,
5527 0b_0000000000_000000,
5528 0b_0000000000_000000,
5529 0b_0000000000_000000,
5530 0b_0000000000_000000,
5531 0b_0000000000_000000,
5532 0b_0000000000_000000,
5533 /* 0x01 */
5534 0b_0000000000_000000,
5535 0b_0011111100_000000,
5536 0b_0100000010_000000,
5537 0b_0101001010_000000,
5538 0b_0100000010_000000,
5539 0b_0101111010_000000,
5540 0b_0100110010_000000,
5541 0b_0010000100_000000,
5542 0b_0001111000_000000,
5543 0b_0000000000_000000,
5544 /* 0x02 */
5545 0b_0000000000_000000,
5546 0b_0011111100_000000,
5547 0b_0111111110_000000,
5548 0b_0110110110_000000,
5549 0b_0111111110_000000,
5550 0b_0110000110_000000,
5551 0b_0111001110_000000,
5552 0b_0011111100_000000,
5553 0b_0001111000_000000,
5554 0b_0000000000_000000,
5555 /* 0x03 */
5556 0b_0000000000_000000,
5557 0b_0011101110_000000,
5558 0b_0111111111_000000,
5559 0b_0111111111_000000,
5560 0b_0111111111_000000,
5561 0b_0011111110_000000,
5562 0b_0001111100_000000,
5563 0b_0000111000_000000,
5564 0b_0000010000_000000,
5565 0b_0000000000_000000,
5566 /* 0x04 */
5567 0b_0000010000_000000,
5568 0b_0000111000_000000,
5569 0b_0001111100_000000,
5570 0b_0011111110_000000,
5571 0b_0111111111_000000,
5572 0b_0011111110_000000,
5573 0b_0001111100_000000,
5574 0b_0000111000_000000,
5575 0b_0000010000_000000,
5576 0b_0000000000_000000,
5577 /* 0x05 */
5578 0b_0000000000_000000,
5579 0b_0000111000_000000,
5580 0b_0001111100_000000,
5581 0b_0000111000_000000,
5582 0b_0011111110_000000,
5583 0b_0111111111_000000,
5584 0b_0011010110_000000,
5585 0b_0000010000_000000,
5586 0b_0000111000_000000,
5587 0b_0000000000_000000,
5588 /* 0x06 */
5589 0b_0000010000_000000,
5590 0b_0000111000_000000,
5591 0b_0001111100_000000,
5592 0b_0011111110_000000,
5593 0b_0111111111_000000,
5594 0b_0111111111_000000,
5595 0b_0011010110_000000,
5596 0b_0000010000_000000,
5597 0b_0000111000_000000,
5598 0b_0000000000_000000,
5599 /* 0x07 */
5600 0b_0000000000_000000,
5601 0b_0000000000_000000,
5602 0b_0000000000_000000,
5603 0b_0000110000_000000,
5604 0b_0001111000_000000,
5605 0b_0001111000_000000,
5606 0b_0000110000_000000,
5607 0b_0000000000_000000,
5608 0b_0000000000_000000,
5609 0b_0000000000_000000,
5610 /* 0x08 */
5611 0b_1111111111_000000,
5612 0b_1111111111_000000,
5613 0b_1111111111_000000,
5614 0b_1111001111_000000,
5615 0b_1110000111_000000,
5616 0b_1110000111_000000,
5617 0b_1111001111_000000,
5618 0b_1111111111_000000,
5619 0b_1111111111_000000,
5620 0b_1111111111_000000,
5621 /* 0x09 */
5622 0b_0000000000_000000,
5623 0b_0000000000_000000,
5624 0b_0001111000_000000,
5625 0b_0011001100_000000,
5626 0b_0010000100_000000,
5627 0b_0010000100_000000,
5628 0b_0011001100_000000,
5629 0b_0001111000_000000,
5630 0b_0000000000_000000,
5631 0b_0000000000_000000,
5632 /* 0x0a */
5633 0b_1111111111_000000,
5634 0b_1111111111_000000,
5635 0b_1110000111_000000,
5636 0b_1100110011_000000,
5637 0b_1101111011_000000,
5638 0b_1101111011_000000,
5639 0b_1100110011_000000,
5640 0b_1110000111_000000,
5641 0b_1111111111_000000,
5642 0b_1111111111_000000,
5643 /* 0x0b */
5644 0b_0000000000_000000,
5645 0b_0000011110_000000,
5646 0b_0000001110_000000,
5647 0b_0000011110_000000,
5648 0b_0011111010_000000,
5649 0b_0110011000_000000,
5650 0b_0110011000_000000,
5651 0b_0110011000_000000,
5652 0b_0011110000_000000,
5653 0b_0000000000_000000,
5654 /* 0x0c */
5655 0b_0000000000_000000,
5656 0b_0001111000_000000,
5657 0b_0011001100_000000,
5658 0b_0011001100_000000,
5659 0b_0011001100_000000,
5660 0b_0001111000_000000,
5661 0b_0000110000_000000,
5662 0b_0011111100_000000,
5663 0b_0000110000_000000,
5664 0b_0000000000_000000,
5665 /* 0x0d */
5666 0b_0000010000_000000,
5667 0b_0000011000_000000,
5668 0b_0000011100_000000,
5669 0b_0000010100_000000,
5670 0b_0000010100_000000,
5671 0b_0000010000_000000,
5672 0b_0001110000_000000,
5673 0b_0011110000_000000,
5674 0b_0001100000_000000,
5675 0b_0000000000_000000,
5676 /* 0x0e */
5677 0b_0000000000_000000,
5678 0b_0001111110_000000,
5679 0b_0001111110_000000,
5680 0b_0001000010_000000,
5681 0b_0001000010_000000,
5682 0b_0001000110_000000,
5683 0b_0011001110_000000,
5684 0b_0111000100_000000,
5685 0b_0010000000_000000,
5686 0b_0000000000_000000,
5687 /* 0x0f */
5688 0b_0000000000_000000,
5689 0b_0000110000_000000,
5690 0b_0110110110_000000,
5691 0b_0001111000_000000,
5692 0b_0111001110_000000,
5693 0b_0111001110_000000,
5694 0b_0001111000_000000,
5695 0b_0110110110_000000,
5696 0b_0000110000_000000,
5697 0b_0000000000_000000,
5698 /* 0x10 */
5699 0b_0001000000_000000,
5700 0b_0001100000_000000,
5701 0b_0001110000_000000,
5702 0b_0001111000_000000,
5703 0b_0001111100_000000,
5704 0b_0001111000_000000,
5705 0b_0001110000_000000,
5706 0b_0001100000_000000,
5707 0b_0001000000_000000,
5708 0b_0000000000_000000,
5709 /* 0x11 */
5710 0b_0000000100_000000,
5711 0b_0000001100_000000,
5712 0b_0000011100_000000,
5713 0b_0000111100_000000,
5714 0b_0001111100_000000,
5715 0b_0000111100_000000,
5716 0b_0000011100_000000,
5717 0b_0000001100_000000,
5718 0b_0000000100_000000,
5719 0b_0000000000_000000,
5720 /* 0x12 */
5721 0b_0000000000_000000,
5722 0b_0000110000_000000,
5723 0b_0001111000_000000,
5724 0b_0011111100_000000,
5725 0b_0000110000_000000,
5726 0b_0000110000_000000,
5727 0b_0011111100_000000,
5728 0b_0001111000_000000,
5729 0b_0000110000_000000,
5730 0b_0000000000_000000,
5731 /* 0x13 */
5732 0b_0000000000_000000,
5733 0b_0011001100_000000,
5734 0b_0011001100_000000,
5735 0b_0011001100_000000,
5736 0b_0011001100_000000,
5737 0b_0011001100_000000,
5738 0b_0000000000_000000,
5739 0b_0011001100_000000,
5740 0b_0000000000_000000,
5741 0b_0000000000_000000,
5742 /* 0x14 */
5743 0b_0000000000_000000,
5744 0b_0011111110_000000,
5745 0b_0110110110_000000,
5746 0b_0110110110_000000,
5747 0b_0011110110_000000,
5748 0b_0000110110_000000,
5749 0b_0000110110_000000,
5750 0b_0000110110_000000,
5751 0b_0000000000_000000,
5752 0b_0000000000_000000,
5753 /* 0x15 */
5754 0b_0000000000_000000,
5755 0b_0001111100_000000,
5756 0b_0011000000_000000,
5757 0b_0001111100_000000,
5758 0b_0011000110_000000,
5759 0b_0001111100_000000,
5760 0b_0000000110_000000,
5761 0b_0001111100_000000,
5762 0b_0000000000_000000,
5763 0b_0000000000_000000,
5764 /* 0x16 */
5765 0b_0000000000_000000,
5766 0b_0000000000_000000,
5767 0b_0000000000_000000,
5768 0b_0000000000_000000,
5769 0b_0000000000_000000,
5770 0b_0111111110_000000,
5771 0b_0111111110_000000,
5772 0b_0111111110_000000,
5773 0b_0000000000_000000,
5774 0b_0000000000_000000,
5775 /* 0x17 */
5776 0b_0000000000_000000,
5777 0b_0000110000_000000,
5778 0b_0001111000_000000,
5779 0b_0011111100_000000,
5780 0b_0000110000_000000,
5781 0b_0000110000_000000,
5782 0b_0011111100_000000,
5783 0b_0001111000_000000,
5784 0b_0000110000_000000,
5785 0b_1111111111_000000,
5786 /* 0x18 */
5787 0b_0000000000_000000,
5788 0b_0000110000_000000,
5789 0b_0001111000_000000,
5790 0b_0011111100_000000,
5791 0b_0000110000_000000,
5792 0b_0000110000_000000,
5793 0b_0000110000_000000,
5794 0b_0000110000_000000,
5795 0b_0000110000_000000,
5796 0b_0000000000_000000,
5797 /* 0x19 */
5798 0b_0000000000_000000,
5799 0b_0000110000_000000,
5800 0b_0000110000_000000,
5801 0b_0000110000_000000,
5802 0b_0000110000_000000,
5803 0b_0000110000_000000,
5804 0b_0011111100_000000,
5805 0b_0001111000_000000,
5806 0b_0000110000_000000,
5807 0b_0000000000_000000,
5808 /* 0x1a */
5809 0b_0000000000_000000,
5810 0b_0000000000_000000,
5811 0b_0000011000_000000,
5812 0b_0000001100_000000,
5813 0b_0111111110_000000,
5814 0b_0000001100_000000,
5815 0b_0000011000_000000,
5816 0b_0000000000_000000,
5817 0b_0000000000_000000,
5818 0b_0000000000_000000,
5819 /* 0x1b */
5820 0b_0000000000_000000,
5821 0b_0000000000_000000,
5822 0b_0001100000_000000,
5823 0b_0011000000_000000,
5824 0b_0111111110_000000,
5825 0b_0011000000_000000,
5826 0b_0001100000_000000,
5827 0b_0000000000_000000,
5828 0b_0000000000_000000,
5829 0b_0000000000_000000,
5830 /* 0x1c */
5831 0b_0000000000_000000,
5832 0b_0000000000_000000,
5833 0b_0000000000_000000,
5834 0b_0000000000_000000,
5835 0b_0110000000_000000,
5836 0b_0110000000_000000,
5837 0b_0110000000_000000,
5838 0b_0111111110_000000,
5839 0b_0000000000_000000,
5840 0b_0000000000_000000,
5841 /* 0x1d */
5842 0b_0000000000_000000,
5843 0b_0000000000_000000,
5844 0b_0001000100_000000,
5845 0b_0011000110_000000,
5846 0b_0111111111_000000,
5847 0b_0011000110_000000,
5848 0b_0001000100_000000,
5849 0b_0000000000_000000,
5850 0b_0000000000_000000,
5851 0b_0000000000_000000,
5852 /* 0x1e */
5853 0b_0000000000_000000,
5854 0b_0000000000_000000,
5855 0b_0000010000_000000,
5856 0b_0000111000_000000,
5857 0b_0001111100_000000,
5858 0b_0011111110_000000,
5859 0b_0111111111_000000,
5860 0b_0000000000_000000,
5861 0b_0000000000_000000,
5862 0b_0000000000_000000,
5863 /* 0x1f */
5864 0b_0000000000_000000,
5865 0b_0000000000_000000,
5866 0b_0111111111_000000,
5867 0b_0011111110_000000,
5868 0b_0001111100_000000,
5869 0b_0000111000_000000,
5870 0b_0000010000_000000,
5871 0b_0000000000_000000,
5872 0b_0000000000_000000,
5873 0b_0000000000_000000,
5874 /* 0x20 */
5875 0b_0000000000_000000,
5876 0b_0000000000_000000,
5877 0b_0000000000_000000,
5878 0b_0000000000_000000,
5879 0b_0000000000_000000,
5880 0b_0000000000_000000,
5881 0b_0000000000_000000,
5882 0b_0000000000_000000,
5883 0b_0000000000_000000,
5884 0b_0000000000_000000,
5885 /* ! */
5886 0b_0000000000_000000,
5887 0b_0000110000_000000,
5888 0b_0001111000_000000,
5889 0b_0001111000_000000,
5890 0b_0000110000_000000,
5891 0b_0000110000_000000,
5892 0b_0000000000_000000,
5893 0b_0000110000_000000,
5894 0b_0000000000_000000,
5895 0b_0000000000_000000,
5896 /* " */
5897 0b_0000000000_000000,
5898 0b_0001101100_000000,
5899 0b_0001101100_000000,
5900 0b_0001101100_000000,
5901 0b_0000000000_000000,
5902 0b_0000000000_000000,
5903 0b_0000000000_000000,
5904 0b_0000000000_000000,
5905 0b_0000000000_000000,
5906 0b_0000000000_000000,
5907 /* # */
5908 0b_0000000000_000000,
5909 0b_0001101100_000000,
5910 0b_0001101100_000000,
5911 0b_0111111111_000000,
5912 0b_0001101100_000000,
5913 0b_0111111111_000000,
5914 0b_0001101100_000000,
5915 0b_0001101100_000000,
5916 0b_0000000000_000000,
5917 0b_0000000000_000000,
5918 /* $ */
5919 0b_0000010000_000000,
5920 0b_0001111100_000000,
5921 0b_0011010110_000000,
5922 0b_0011010000_000000,
5923 0b_0001111100_000000,
5924 0b_0000010110_000000,
5925 0b_0011010110_000000,
5926 0b_0001111100_000000,
5927 0b_0000010000_000000,
5928 0b_0000000000_000000,
5929 /* % */
5930 0b_0000000000_000000,
5931 0b_0011000110_000000,
5932 0b_0011001100_000000,
5933 0b_0000011000_000000,
5934 0b_0000110000_000000,
5935 0b_0001100110_000000,
5936 0b_0011000110_000000,
5937 0b_0000000000_000000,
5938 0b_0000000000_000000,
5939 0b_0000000000_000000,
5940 /* & */
5941 0b_0000000000_000000,
5942 0b_0001110000_000000,
5943 0b_0011001100_000000,
5944 0b_0011001100_000000,
5945 0b_0001111110_000000,
5946 0b_0011001100_000000,
5947 0b_0011001100_000000,
5948 0b_0001110110_000000,
5949 0b_0000000000_000000,
5950 0b_0000000000_000000,
5951 /* ' */
5952 0b_0000000000_000000,
5953 0b_0000111000_000000,
5954 0b_0000110000_000000,
5955 0b_0001100000_000000,
5956 0b_0000000000_000000,
5957 0b_0000000000_000000,
5958 0b_0000000000_000000,
5959 0b_0000000000_000000,
5960 0b_0000000000_000000,
5961 0b_0000000000_000000,
5962 /* ( */
5963 0b_0000000000_000000,
5964 0b_0000011000_000000,
5965 0b_0000110000_000000,
5966 0b_0001100000_000000,
5967 0b_0001100000_000000,
5968 0b_0001100000_000000,
5969 0b_0000110000_000000,
5970 0b_0000011000_000000,
5971 0b_0000000000_000000,
5972 0b_0000000000_000000,
5973 /* ) */
5974 0b_0000000000_000000,
5975 0b_0001100000_000000,
5976 0b_0000110000_000000,
5977 0b_0000011000_000000,
5978 0b_0000011000_000000,
5979 0b_0000011000_000000,
5980 0b_0000110000_000000,
5981 0b_0001100000_000000,
5982 0b_0000000000_000000,
5983 0b_0000000000_000000,
5984 /* * */
5985 0b_0000000000_000000,
5986 0b_0000000000_000000,
5987 0b_0011001100_000000,
5988 0b_0001111000_000000,
5989 0b_0111111110_000000,
5990 0b_0001111000_000000,
5991 0b_0011001100_000000,
5992 0b_0000000000_000000,
5993 0b_0000000000_000000,
5994 0b_0000000000_000000,
5995 /* + */
5996 0b_0000000000_000000,
5997 0b_0000000000_000000,
5998 0b_0000110000_000000,
5999 0b_0000110000_000000,
6000 0b_0011111100_000000,
6001 0b_0000110000_000000,
6002 0b_0000110000_000000,
6003 0b_0000000000_000000,
6004 0b_0000000000_000000,
6005 0b_0000000000_000000,
6006 /* , */
6007 0b_0000000000_000000,
6008 0b_0000000000_000000,
6009 0b_0000000000_000000,
6010 0b_0000000000_000000,
6011 0b_0000000000_000000,
6012 0b_0000000000_000000,
6013 0b_0000110000_000000,
6014 0b_0000110000_000000,
6015 0b_0001100000_000000,
6016 0b_0000000000_000000,
6017 /* - */
6018 0b_0000000000_000000,
6019 0b_0000000000_000000,
6020 0b_0000000000_000000,
6021 0b_0000000000_000000,
6022 0b_0011111100_000000,
6023 0b_0000000000_000000,
6024 0b_0000000000_000000,
6025 0b_0000000000_000000,
6026 0b_0000000000_000000,
6027 0b_0000000000_000000,
6028 /* . */
6029 0b_0000000000_000000,
6030 0b_0000000000_000000,
6031 0b_0000000000_000000,
6032 0b_0000000000_000000,
6033 0b_0000000000_000000,
6034 0b_0000000000_000000,
6035 0b_0000110000_000000,
6036 0b_0000110000_000000,
6037 0b_0000000000_000000,
6038 0b_0000000000_000000,
6039 /* / */
6040 0b_0000000000_000000,
6041 0b_0000000110_000000,
6042 0b_0000001100_000000,
6043 0b_0000011000_000000,
6044 0b_0000110000_000000,
6045 0b_0001100000_000000,
6046 0b_0011000000_000000,
6047 0b_0110000000_000000,
6048 0b_0000000000_000000,
6049 0b_0000000000_000000,
6050 /* 0 */
6051 0b_0000000000_000000,
6052 0b_0001111100_000000,
6053 0b_0011001110_000000,
6054 0b_0011011110_000000,
6055 0b_0011111110_000000,
6056 0b_0011110110_000000,
6057 0b_0011100110_000000,
6058 0b_0001111100_000000,
6059 0b_0000000000_000000,
6060 0b_0000000000_000000,
6061 /* 1 */
6062 0b_0000000000_000000,
6063 0b_0000110000_000000,
6064 0b_0001110000_000000,
6065 0b_0000110000_000000,
6066 0b_0000110000_000000,
6067 0b_0000110000_000000,
6068 0b_0000110000_000000,
6069 0b_0011111100_000000,
6070 0b_0000000000_000000,
6071 0b_0000000000_000000,
6072 /* 2 */
6073 0b_0000000000_000000,
6074 0b_0001111100_000000,
6075 0b_0011000110_000000,
6076 0b_0000000110_000000,
6077 0b_0000111100_000000,
6078 0b_0001100000_000000,
6079 0b_0011000110_000000,
6080 0b_0011111110_000000,
6081 0b_0000000000_000000,
6082 0b_0000000000_000000,
6083 /* 3 */
6084 0b_0000000000_000000,
6085 0b_0001111100_000000,
6086 0b_0011000110_000000,
6087 0b_0000000110_000000,
6088 0b_0000011100_000000,
6089 0b_0000000110_000000,
6090 0b_0011000110_000000,
6091 0b_0001111100_000000,
6092 0b_0000000000_000000,
6093 0b_0000000000_000000,
6094 /* 4 */
6095 0b_0000000000_000000,
6096 0b_0000011100_000000,
6097 0b_0000111100_000000,
6098 0b_0001101100_000000,
6099 0b_0011001100_000000,
6100 0b_0011111110_000000,
6101 0b_0000001100_000000,
6102 0b_0000011110_000000,
6103 0b_0000000000_000000,
6104 0b_0000000000_000000,
6105 /* 5 */
6106 0b_0000000000_000000,
6107 0b_0011111110_000000,
6108 0b_0011000000_000000,
6109 0b_0011000000_000000,
6110 0b_0011111100_000000,
6111 0b_0000000110_000000,
6112 0b_0011000110_000000,
6113 0b_0001111100_000000,
6114 0b_0000000000_000000,
6115 0b_0000000000_000000,
6116 /* 6 */
6117 0b_0000000000_000000,
6118 0b_0000111100_000000,
6119 0b_0001100000_000000,
6120 0b_0011000000_000000,
6121 0b_0011111100_000000,
6122 0b_0011000110_000000,
6123 0b_0011000110_000000,
6124 0b_0001111100_000000,
6125 0b_0000000000_000000,
6126 0b_0000000000_000000,
6127 /* 7 */
6128 0b_0000000000_000000,
6129 0b_0011111110_000000,
6130 0b_0011000110_000000,
6131 0b_0000000110_000000,
6132 0b_0000001100_000000,
6133 0b_0000011000_000000,
6134 0b_0000110000_000000,
6135 0b_0000110000_000000,
6136 0b_0000000000_000000,
6137 0b_0000000000_000000,
6138 /* 8 */
6139 0b_0000000000_000000,
6140 0b_0001111100_000000,
6141 0b_0011000110_000000,
6142 0b_0011000110_000000,
6143 0b_0001111100_000000,
6144 0b_0011000110_000000,
6145 0b_0011000110_000000,
6146 0b_0001111100_000000,
6147 0b_0000000000_000000,
6148 0b_0000000000_000000,
6149 /* 9 */
6150 0b_0000000000_000000,
6151 0b_0001111100_000000,
6152 0b_0011000110_000000,
6153 0b_0011000110_000000,
6154 0b_0001111110_000000,
6155 0b_0000000110_000000,
6156 0b_0000001100_000000,
6157 0b_0001111000_000000,
6158 0b_0000000000_000000,
6159 0b_0000000000_000000,
6160 /* : */
6161 0b_0000000000_000000,
6162 0b_0000000000_000000,
6163 0b_0000110000_000000,
6164 0b_0000110000_000000,
6165 0b_0000000000_000000,
6166 0b_0000000000_000000,
6167 0b_0000110000_000000,
6168 0b_0000110000_000000,
6169 0b_0000000000_000000,
6170 0b_0000000000_000000,
6171 /* ; */
6172 0b_0000000000_000000,
6173 0b_0000000000_000000,
6174 0b_0000110000_000000,
6175 0b_0000110000_000000,
6176 0b_0000000000_000000,
6177 0b_0000000000_000000,
6178 0b_0000110000_000000,
6179 0b_0000110000_000000,
6180 0b_0001100000_000000,
6181 0b_0000000000_000000,
6182 /* < */
6183 0b_0000000000_000000,
6184 0b_0000001100_000000,
6185 0b_0000011000_000000,
6186 0b_0000110000_000000,
6187 0b_0001100000_000000,
6188 0b_0000110000_000000,
6189 0b_0000011000_000000,
6190 0b_0000001100_000000,
6191 0b_0000000000_000000,
6192 0b_0000000000_000000,
6193 /* = */
6194 0b_0000000000_000000,
6195 0b_0000000000_000000,
6196 0b_0000000000_000000,
6197 0b_0011111100_000000,
6198 0b_0000000000_000000,
6199 0b_0011111100_000000,
6200 0b_0000000000_000000,
6201 0b_0000000000_000000,
6202 0b_0000000000_000000,
6203 0b_0000000000_000000,
6204 /* > */
6205 0b_0000000000_000000,
6206 0b_0001100000_000000,
6207 0b_0000110000_000000,
6208 0b_0000011000_000000,
6209 0b_0000001100_000000,
6210 0b_0000011000_000000,
6211 0b_0000110000_000000,
6212 0b_0001100000_000000,
6213 0b_0000000000_000000,
6214 0b_0000000000_000000,
6215 /* ? */
6216 0b_0000000000_000000,
6217 0b_0001111000_000000,
6218 0b_0011001100_000000,
6219 0b_0000001100_000000,
6220 0b_0000001100_000000,
6221 0b_0000011000_000000,
6222 0b_0000110000_000000,
6223 0b_0000000000_000000,
6224 0b_0000110000_000000,
6225 0b_0000000000_000000,
6226 /* @ */
6227 0b_0000000000_000000,
6228 0b_0011111100_000000,
6229 0b_0110000110_000000,
6230 0b_0110011110_000000,
6231 0b_0110110110_000000,
6232 0b_0110011110_000000,
6233 0b_0110000000_000000,
6234 0b_0011111100_000000,
6235 0b_0000000000_000000,
6236 0b_0000000000_000000,
6237 /* A */
6238 0b_0000000000_000000,
6239 0b_0001111100_000000,
6240 0b_0011000110_000000,
6241 0b_0011000110_000000,
6242 0b_0011111110_000000,
6243 0b_0011000110_000000,
6244 0b_0011000110_000000,
6245 0b_0011000110_000000,
6246 0b_0000000000_000000,
6247 0b_0000000000_000000,
6248 /* B */
6249 0b_0000000000_000000,
6250 0b_0011111100_000000,
6251 0b_0011000110_000000,
6252 0b_0011000110_000000,
6253 0b_0011111100_000000,
6254 0b_0011000110_000000,
6255 0b_0011000110_000000,
6256 0b_0011111100_000000,
6257 0b_0000000000_000000,
6258 0b_0000000000_000000,
6259 /* C */
6260 0b_0000000000_000000,
6261 0b_0001111100_000000,
6262 0b_0011000110_000000,
6263 0b_0011000000_000000,
6264 0b_0011000000_000000,
6265 0b_0011000000_000000,
6266 0b_0011000110_000000,
6267 0b_0001111100_000000,
6268 0b_0000000000_000000,
6269 0b_0000000000_000000,
6270 /* D */
6271 0b_0000000000_000000,
6272 0b_0011111000_000000,
6273 0b_0011001100_000000,
6274 0b_0011000110_000000,
6275 0b_0011000110_000000,
6276 0b_0011000110_000000,
6277 0b_0011001100_000000,
6278 0b_0011111000_000000,
6279 0b_0000000000_000000,
6280 0b_0000000000_000000,
6281 /* E */
6282 0b_0000000000_000000,
6283 0b_0011111110_000000,
6284 0b_0011000000_000000,
6285 0b_0011000000_000000,
6286 0b_0011111100_000000,
6287 0b_0011000000_000000,
6288 0b_0011000000_000000,
6289 0b_0011111110_000000,
6290 0b_0000000000_000000,
6291 0b_0000000000_000000,
6292 /* F */
6293 0b_0000000000_000000,
6294 0b_0011111110_000000,
6295 0b_0011000000_000000,
6296 0b_0011000000_000000,
6297 0b_0011111100_000000,
6298 0b_0011000000_000000,
6299 0b_0011000000_000000,
6300 0b_0011000000_000000,
6301 0b_0000000000_000000,
6302 0b_0000000000_000000,
6303 /* G */
6304 0b_0000000000_000000,
6305 0b_0001111100_000000,
6306 0b_0011000110_000000,
6307 0b_0011000000_000000,
6308 0b_0011001110_000000,
6309 0b_0011000110_000000,
6310 0b_0011000110_000000,
6311 0b_0001111100_000000,
6312 0b_0000000000_000000,
6313 0b_0000000000_000000,
6314 /* H */
6315 0b_0000000000_000000,
6316 0b_0011000110_000000,
6317 0b_0011000110_000000,
6318 0b_0011000110_000000,
6319 0b_0011111110_000000,
6320 0b_0011000110_000000,
6321 0b_0011000110_000000,
6322 0b_0011000110_000000,
6323 0b_0000000000_000000,
6324 0b_0000000000_000000,
6325 /* I */
6326 0b_0000000000_000000,
6327 0b_0001111000_000000,
6328 0b_0000110000_000000,
6329 0b_0000110000_000000,
6330 0b_0000110000_000000,
6331 0b_0000110000_000000,
6332 0b_0000110000_000000,
6333 0b_0001111000_000000,
6334 0b_0000000000_000000,
6335 0b_0000000000_000000,
6336 /* J */
6337 0b_0000000000_000000,
6338 0b_0000011100_000000,
6339 0b_0000001100_000000,
6340 0b_0000001100_000000,
6341 0b_0000001100_000000,
6342 0b_0011001100_000000,
6343 0b_0011001100_000000,
6344 0b_0001111000_000000,
6345 0b_0000000000_000000,
6346 0b_0000000000_000000,
6347 /* K */
6348 0b_0000000000_000000,
6349 0b_0011000110_000000,
6350 0b_0011000110_000000,
6351 0b_0011001100_000000,
6352 0b_0011111000_000000,
6353 0b_0011001100_000000,
6354 0b_0011000110_000000,
6355 0b_0011000110_000000,
6356 0b_0000000000_000000,
6357 0b_0000000000_000000,
6358 /* L */
6359 0b_0000000000_000000,
6360 0b_0011000000_000000,
6361 0b_0011000000_000000,
6362 0b_0011000000_000000,
6363 0b_0011000000_000000,
6364 0b_0011000000_000000,
6365 0b_0011000000_000000,
6366 0b_0011111110_000000,
6367 0b_0000000000_000000,
6368 0b_0000000000_000000,
6369 /* M */
6370 0b_0000000000_000000,
6371 0b_0110000110_000000,
6372 0b_0111001110_000000,
6373 0b_0111111110_000000,
6374 0b_0110110110_000000,
6375 0b_0110000110_000000,
6376 0b_0110000110_000000,
6377 0b_0110000110_000000,
6378 0b_0000000000_000000,
6379 0b_0000000000_000000,
6380 /* N */
6381 0b_0000000000_000000,
6382 0b_0011000110_000000,
6383 0b_0011100110_000000,
6384 0b_0011110110_000000,
6385 0b_0011011110_000000,
6386 0b_0011001110_000000,
6387 0b_0011000110_000000,
6388 0b_0011000110_000000,
6389 0b_0000000000_000000,
6390 0b_0000000000_000000,
6391 /* O */
6392 0b_0000000000_000000,
6393 0b_0001111100_000000,
6394 0b_0011000110_000000,
6395 0b_0011000110_000000,
6396 0b_0011000110_000000,
6397 0b_0011000110_000000,
6398 0b_0011000110_000000,
6399 0b_0001111100_000000,
6400 0b_0000000000_000000,
6401 0b_0000000000_000000,
6402 /* P */
6403 0b_0000000000_000000,
6404 0b_0011111100_000000,
6405 0b_0011000110_000000,
6406 0b_0011000110_000000,
6407 0b_0011111100_000000,
6408 0b_0011000000_000000,
6409 0b_0011000000_000000,
6410 0b_0011000000_000000,
6411 0b_0000000000_000000,
6412 0b_0000000000_000000,
6413 /* Q */
6414 0b_0000000000_000000,
6415 0b_0001111100_000000,
6416 0b_0011000110_000000,
6417 0b_0011000110_000000,
6418 0b_0011000110_000000,
6419 0b_0011000110_000000,
6420 0b_0011001110_000000,
6421 0b_0001111100_000000,
6422 0b_0000001110_000000,
6423 0b_0000000000_000000,
6424 /* R */
6425 0b_0000000000_000000,
6426 0b_0011111100_000000,
6427 0b_0011000110_000000,
6428 0b_0011000110_000000,
6429 0b_0011111100_000000,
6430 0b_0011001100_000000,
6431 0b_0011000110_000000,
6432 0b_0011000110_000000,
6433 0b_0000000000_000000,
6434 0b_0000000000_000000,
6435 /* S */
6436 0b_0000000000_000000,
6437 0b_0001111100_000000,
6438 0b_0011000110_000000,
6439 0b_0011000000_000000,
6440 0b_0001111100_000000,
6441 0b_0000000110_000000,
6442 0b_0011000110_000000,
6443 0b_0001111100_000000,
6444 0b_0000000000_000000,
6445 0b_0000000000_000000,
6446 /* T */
6447 0b_0000000000_000000,
6448 0b_0111111110_000000,
6449 0b_0000110000_000000,
6450 0b_0000110000_000000,
6451 0b_0000110000_000000,
6452 0b_0000110000_000000,
6453 0b_0000110000_000000,
6454 0b_0000110000_000000,
6455 0b_0000000000_000000,
6456 0b_0000000000_000000,
6457 /* U */
6458 0b_0000000000_000000,
6459 0b_0011000110_000000,
6460 0b_0011000110_000000,
6461 0b_0011000110_000000,
6462 0b_0011000110_000000,
6463 0b_0011000110_000000,
6464 0b_0011000110_000000,
6465 0b_0001111100_000000,
6466 0b_0000000000_000000,
6467 0b_0000000000_000000,
6468 /* V */
6469 0b_0000000000_000000,
6470 0b_0011000110_000000,
6471 0b_0011000110_000000,
6472 0b_0011000110_000000,
6473 0b_0011000110_000000,
6474 0b_0001101100_000000,
6475 0b_0000111000_000000,
6476 0b_0000010000_000000,
6477 0b_0000000000_000000,
6478 0b_0000000000_000000,
6479 /* W */
6480 0b_0000000000_000000,
6481 0b_0110000110_000000,
6482 0b_0110000110_000000,
6483 0b_0110000110_000000,
6484 0b_0110110110_000000,
6485 0b_0111111110_000000,
6486 0b_0111001110_000000,
6487 0b_0110000110_000000,
6488 0b_0000000000_000000,
6489 0b_0000000000_000000,
6490 /* X */
6491 0b_0000000000_000000,
6492 0b_0110000110_000000,
6493 0b_0011001100_000000,
6494 0b_0001111000_000000,
6495 0b_0000110000_000000,
6496 0b_0001111000_000000,
6497 0b_0011001100_000000,
6498 0b_0110000110_000000,
6499 0b_0000000000_000000,
6500 0b_0000000000_000000,
6501 /* Y */
6502 0b_0000000000_000000,
6503 0b_0110000110_000000,
6504 0b_0110000110_000000,
6505 0b_0011001100_000000,
6506 0b_0001111000_000000,
6507 0b_0000110000_000000,
6508 0b_0000110000_000000,
6509 0b_0000110000_000000,
6510 0b_0000000000_000000,
6511 0b_0000000000_000000,
6512 /* Z */
6513 0b_0000000000_000000,
6514 0b_0011111110_000000,
6515 0b_0000001100_000000,
6516 0b_0000011000_000000,
6517 0b_0000110000_000000,
6518 0b_0001100000_000000,
6519 0b_0011000000_000000,
6520 0b_0011111110_000000,
6521 0b_0000000000_000000,
6522 0b_0000000000_000000,
6523 /* [ */
6524 0b_0000000000_000000,
6525 0b_0001111000_000000,
6526 0b_0001100000_000000,
6527 0b_0001100000_000000,
6528 0b_0001100000_000000,
6529 0b_0001100000_000000,
6530 0b_0001100000_000000,
6531 0b_0001111000_000000,
6532 0b_0000000000_000000,
6533 0b_0000000000_000000,
6534 /* \ */
6535 0b_0000000000_000000,
6536 0b_0110000000_000000,
6537 0b_0011000000_000000,
6538 0b_0001100000_000000,
6539 0b_0000110000_000000,
6540 0b_0000011000_000000,
6541 0b_0000001100_000000,
6542 0b_0000000000_000000,
6543 0b_0000000000_000000,
6544 0b_0000000000_000000,
6545 /* ] */
6546 0b_0000000000_000000,
6547 0b_0001111000_000000,
6548 0b_0000011000_000000,
6549 0b_0000011000_000000,
6550 0b_0000011000_000000,
6551 0b_0000011000_000000,
6552 0b_0000011000_000000,
6553 0b_0001111000_000000,
6554 0b_0000000000_000000,
6555 0b_0000000000_000000,
6556 /* ^ */
6557 0b_0000000000_000000,
6558 0b_0000010000_000000,
6559 0b_0000111000_000000,
6560 0b_0001101100_000000,
6561 0b_0011000110_000000,
6562 0b_0000000000_000000,
6563 0b_0000000000_000000,
6564 0b_0000000000_000000,
6565 0b_0000000000_000000,
6566 0b_0000000000_000000,
6567 /* _ */
6568 0b_0000000000_000000,
6569 0b_0000000000_000000,
6570 0b_0000000000_000000,
6571 0b_0000000000_000000,
6572 0b_0000000000_000000,
6573 0b_0000000000_000000,
6574 0b_0000000000_000000,
6575 0b_0000000000_000000,
6576 0b_1111111111_000000,
6577 0b_0000000000_000000,
6578 /* ` */
6579 0b_0000000000_000000,
6580 0b_0001110000_000000,
6581 0b_0000110000_000000,
6582 0b_0000011000_000000,
6583 0b_0000000000_000000,
6584 0b_0000000000_000000,
6585 0b_0000000000_000000,
6586 0b_0000000000_000000,
6587 0b_0000000000_000000,
6588 0b_0000000000_000000,
6589 /* a */
6590 0b_0000000000_000000,
6591 0b_0000000000_000000,
6592 0b_0000000000_000000,
6593 0b_0001111100_000000,
6594 0b_0000000110_000000,
6595 0b_0001111110_000000,
6596 0b_0011000110_000000,
6597 0b_0001111110_000000,
6598 0b_0000000000_000000,
6599 0b_0000000000_000000,
6600 /* b */
6601 0b_0000000000_000000,
6602 0b_0011000000_000000,
6603 0b_0011000000_000000,
6604 0b_0011111100_000000,
6605 0b_0011000110_000000,
6606 0b_0011000110_000000,
6607 0b_0011000110_000000,
6608 0b_0011111100_000000,
6609 0b_0000000000_000000,
6610 0b_0000000000_000000,
6611 /* c */
6612 0b_0000000000_000000,
6613 0b_0000000000_000000,
6614 0b_0000000000_000000,
6615 0b_0001111100_000000,
6616 0b_0011000110_000000,
6617 0b_0011000000_000000,
6618 0b_0011000110_000000,
6619 0b_0001111100_000000,
6620 0b_0000000000_000000,
6621 0b_0000000000_000000,
6622 /* d */
6623 0b_0000000000_000000,
6624 0b_0000000110_000000,
6625 0b_0000000110_000000,
6626 0b_0001111110_000000,
6627 0b_0011000110_000000,
6628 0b_0011000110_000000,
6629 0b_0011000110_000000,
6630 0b_0001111110_000000,
6631 0b_0000000000_000000,
6632 0b_0000000000_000000,
6633 /* e */
6634 0b_0000000000_000000,
6635 0b_0000000000_000000,
6636 0b_0000000000_000000,
6637 0b_0001111100_000000,
6638 0b_0011000110_000000,
6639 0b_0011111110_000000,
6640 0b_0011000000_000000,
6641 0b_0001111100_000000,
6642 0b_0000000000_000000,
6643 0b_0000000000_000000,
6644 /* f */
6645 0b_0000000000_000000,
6646 0b_0000111100_000000,
6647 0b_0001100000_000000,
6648 0b_0001100000_000000,
6649 0b_0011111000_000000,
6650 0b_0001100000_000000,
6651 0b_0001100000_000000,
6652 0b_0001100000_000000,
6653 0b_0000000000_000000,
6654 0b_0000000000_000000,
6655 /* g */
6656 0b_0000000000_000000,
6657 0b_0000000000_000000,
6658 0b_0000000000_000000,
6659 0b_0001111110_000000,
6660 0b_0011000110_000000,
6661 0b_0011000110_000000,
6662 0b_0011000110_000000,
6663 0b_0001111110_000000,
6664 0b_0000000110_000000,
6665 0b_0001111100_000000,
6666 /* h */
6667 0b_0000000000_000000,
6668 0b_0011000000_000000,
6669 0b_0011000000_000000,
6670 0b_0011111100_000000,
6671 0b_0011000110_000000,
6672 0b_0011000110_000000,
6673 0b_0011000110_000000,
6674 0b_0011000110_000000,
6675 0b_0000000000_000000,
6676 0b_0000000000_000000,
6677 /* i */
6678 0b_0000000000_000000,
6679 0b_0000110000_000000,
6680 0b_0000000000_000000,
6681 0b_0001110000_000000,
6682 0b_0000110000_000000,
6683 0b_0000110000_000000,
6684 0b_0000110000_000000,
6685 0b_0001111000_000000,
6686 0b_0000000000_000000,
6687 0b_0000000000_000000,
6688 /* j */
6689 0b_0000000000_000000,
6690 0b_0000011000_000000,
6691 0b_0000000000_000000,
6692 0b_0000111000_000000,
6693 0b_0000011000_000000,
6694 0b_0000011000_000000,
6695 0b_0000011000_000000,
6696 0b_0000011000_000000,
6697 0b_0000011000_000000,
6698 0b_0001110000_000000,
6699 /* k */
6700 0b_0000000000_000000,
6701 0b_0011000000_000000,
6702 0b_0011000000_000000,
6703 0b_0011000110_000000,
6704 0b_0011001100_000000,
6705 0b_0011111000_000000,
6706 0b_0011001100_000000,
6707 0b_0011000110_000000,
6708 0b_0000000000_000000,
6709 0b_0000000000_000000,
6710 /* l */
6711 0b_0000000000_000000,
6712 0b_0001110000_000000,
6713 0b_0000110000_000000,
6714 0b_0000110000_000000,
6715 0b_0000110000_000000,
6716 0b_0000110000_000000,
6717 0b_0000110000_000000,
6718 0b_0000011100_000000,
6719 0b_0000000000_000000,
6720 0b_0000000000_000000,
6721 /* m */
6722 0b_0000000000_000000,
6723 0b_0000000000_000000,
6724 0b_0000000000_000000,
6725 0b_0011001100_000000,
6726 0b_0111111110_000000,
6727 0b_0110110110_000000,
6728 0b_0110110110_000000,
6729 0b_0110000110_000000,
6730 0b_0000000000_000000,
6731 0b_0000000000_000000,
6732 /* n */
6733 0b_0000000000_000000,
6734 0b_0000000000_000000,
6735 0b_0000000000_000000,
6736 0b_0011111100_000000,
6737 0b_0011000110_000000,
6738 0b_0011000110_000000,
6739 0b_0011000110_000000,
6740 0b_0011000110_000000,
6741 0b_0000000000_000000,
6742 0b_0000000000_000000,
6743 /* o */
6744 0b_0000000000_000000,
6745 0b_0000000000_000000,
6746 0b_0000000000_000000,
6747 0b_0001111100_000000,
6748 0b_0011000110_000000,
6749 0b_0011000110_000000,
6750 0b_0011000110_000000,
6751 0b_0001111100_000000,
6752 0b_0000000000_000000,
6753 0b_0000000000_000000,
6754 /* p */
6755 0b_0000000000_000000,
6756 0b_0000000000_000000,
6757 0b_0000000000_000000,
6758 0b_0011111100_000000,
6759 0b_0011000110_000000,
6760 0b_0011000110_000000,
6761 0b_0011111100_000000,
6762 0b_0011000000_000000,
6763 0b_0011000000_000000,
6764 0b_0000000000_000000,
6765 /* q */
6766 0b_0000000000_000000,
6767 0b_0000000000_000000,
6768 0b_0000000000_000000,
6769 0b_0001111110_000000,
6770 0b_0011000110_000000,
6771 0b_0011000110_000000,
6772 0b_0001111110_000000,
6773 0b_0000000110_000000,
6774 0b_0000000111_000000,
6775 0b_0000000000_000000,
6776 /* r */
6777 0b_0000000000_000000,
6778 0b_0000000000_000000,
6779 0b_0000000000_000000,
6780 0b_0011111100_000000,
6781 0b_0011000110_000000,
6782 0b_0011000000_000000,
6783 0b_0011000000_000000,
6784 0b_0011000000_000000,
6785 0b_0000000000_000000,
6786 0b_0000000000_000000,
6787 /* s */
6788 0b_0000000000_000000,
6789 0b_0000000000_000000,
6790 0b_0000000000_000000,
6791 0b_0001111110_000000,
6792 0b_0011000000_000000,
6793 0b_0001111100_000000,
6794 0b_0000000110_000000,
6795 0b_0011111100_000000,
6796 0b_0000000000_000000,
6797 0b_0000000000_000000,
6798 /* t */
6799 0b_0000000000_000000,
6800 0b_0001100000_000000,
6801 0b_0001100000_000000,
6802 0b_0011111000_000000,
6803 0b_0001100000_000000,
6804 0b_0001100000_000000,
6805 0b_0001100000_000000,
6806 0b_0000111100_000000,
6807 0b_0000000000_000000,
6808 0b_0000000000_000000,
6809 /* u */
6810 0b_0000000000_000000,
6811 0b_0000000000_000000,
6812 0b_0000000000_000000,
6813 0b_0011000110_000000,
6814 0b_0011000110_000000,
6815 0b_0011000110_000000,
6816 0b_0011000110_000000,
6817 0b_0001111110_000000,
6818 0b_0000000000_000000,
6819 0b_0000000000_000000,
6820 /* v */
6821 0b_0000000000_000000,
6822 0b_0000000000_000000,
6823 0b_0000000000_000000,
6824 0b_0011000110_000000,
6825 0b_0011000110_000000,
6826 0b_0001101100_000000,
6827 0b_0000111000_000000,
6828 0b_0000010000_000000,
6829 0b_0000000000_000000,
6830 0b_0000000000_000000,
6831 /* w */
6832 0b_0000000000_000000,
6833 0b_0000000000_000000,
6834 0b_0000000000_000000,
6835 0b_0110000110_000000,
6836 0b_0110110110_000000,
6837 0b_0110110110_000000,
6838 0b_0111111110_000000,
6839 0b_0011001100_000000,
6840 0b_0000000000_000000,
6841 0b_0000000000_000000,
6842 /* x */
6843 0b_0000000000_000000,
6844 0b_0000000000_000000,
6845 0b_0000000000_000000,
6846 0b_0011000110_000000,
6847 0b_0001101100_000000,
6848 0b_0000111000_000000,
6849 0b_0001101100_000000,
6850 0b_0011000110_000000,
6851 0b_0000000000_000000,
6852 0b_0000000000_000000,
6853 /* y */
6854 0b_0000000000_000000,
6855 0b_0000000000_000000,
6856 0b_0000000000_000000,
6857 0b_0011000110_000000,
6858 0b_0011000110_000000,
6859 0b_0011000110_000000,
6860 0b_0001111110_000000,
6861 0b_0000000110_000000,
6862 0b_0001111100_000000,
6863 0b_0000000000_000000,
6864 /* z */
6865 0b_0000000000_000000,
6866 0b_0000000000_000000,
6867 0b_0000000000_000000,
6868 0b_0011111100_000000,
6869 0b_0000011000_000000,
6870 0b_0000110000_000000,
6871 0b_0001100000_000000,
6872 0b_0011111100_000000,
6873 0b_0000000000_000000,
6874 0b_0000000000_000000,
6875 /* { */
6876 0b_0000000000_000000,
6877 0b_0000111000_000000,
6878 0b_0001100000_000000,
6879 0b_0001100000_000000,
6880 0b_0011000000_000000,
6881 0b_0001100000_000000,
6882 0b_0001100000_000000,
6883 0b_0000111000_000000,
6884 0b_0000000000_000000,
6885 0b_0000000000_000000,
6886 /* | */
6887 0b_0000110000_000000,
6888 0b_0000110000_000000,
6889 0b_0000110000_000000,
6890 0b_0000110000_000000,
6891 0b_0000000000_000000,
6892 0b_0000110000_000000,
6893 0b_0000110000_000000,
6894 0b_0000110000_000000,
6895 0b_0000110000_000000,
6896 0b_0000000000_000000,
6897 /* } */
6898 0b_0000000000_000000,
6899 0b_0001110000_000000,
6900 0b_0000011000_000000,
6901 0b_0000011000_000000,
6902 0b_0000001100_000000,
6903 0b_0000011000_000000,
6904 0b_0000011000_000000,
6905 0b_0001110000_000000,
6906 0b_0000000000_000000,
6907 0b_0000000000_000000,
6908 /* ~ */
6909 0b_0000000000_000000,
6910 0b_0000000000_000000,
6911 0b_0000000000_000000,
6912 0b_0011100000_000000,
6913 0b_0110110110_000000,
6914 0b_0000011100_000000,
6915 0b_0000000000_000000,
6916 0b_0000000000_000000,
6917 0b_0000000000_000000,
6918 0b_0000000000_000000,
6919 /* 0x7f */
6920 0b_0000000000_000000,
6921 0b_0000010000_000000,
6922 0b_0000111000_000000,
6923 0b_0001101100_000000,
6924 0b_0011000110_000000,
6925 0b_0011000110_000000,
6926 0b_0011000110_000000,
6927 0b_0011111110_000000,
6928 0b_0000000000_000000,
6929 0b_0000000000_000000,
6930 /* 0x80 */
6931 0b_0000000000_000000,
6932 0b_0001111100_000000,
6933 0b_0011000110_000000,
6934 0b_0011000000_000000,
6935 0b_0011000000_000000,
6936 0b_0011000000_000000,
6937 0b_0011000110_000000,
6938 0b_0001111100_000000,
6939 0b_0000110000_000000,
6940 0b_0001100000_000000,
6941 /* 0x81 */
6942 0b_0000000000_000000,
6943 0b_0001101100_000000,
6944 0b_0000000000_000000,
6945 0b_0011000110_000000,
6946 0b_0011000110_000000,
6947 0b_0011000110_000000,
6948 0b_0011000110_000000,
6949 0b_0001111110_000000,
6950 0b_0000000000_000000,
6951 0b_0000000000_000000,
6952 /* 0x82 */
6953 0b_0000011000_000000,
6954 0b_0000110000_000000,
6955 0b_0000000000_000000,
6956 0b_0001111100_000000,
6957 0b_0011000110_000000,
6958 0b_0011111110_000000,
6959 0b_0011000000_000000,
6960 0b_0001111100_000000,
6961 0b_0000000000_000000,
6962 0b_0000000000_000000,
6963 /* 0x83 */
6964 0b_0000111000_000000,
6965 0b_0001101100_000000,
6966 0b_0000000000_000000,
6967 0b_0001111100_000000,
6968 0b_0000000110_000000,
6969 0b_0001111110_000000,
6970 0b_0011000110_000000,
6971 0b_0001111110_000000,
6972 0b_0000000000_000000,
6973 0b_0000000000_000000,
6974 /* 0x84 */
6975 0b_0000000000_000000,
6976 0b_0001101100_000000,
6977 0b_0000000000_000000,
6978 0b_0001111100_000000,
6979 0b_0000000110_000000,
6980 0b_0001111110_000000,
6981 0b_0011000110_000000,
6982 0b_0001111110_000000,
6983 0b_0000000000_000000,
6984 0b_0000000000_000000,
6985 /* 0x85 */
6986 0b_0000110000_000000,
6987 0b_0000011000_000000,
6988 0b_0000000000_000000,
6989 0b_0001111100_000000,
6990 0b_0000000110_000000,
6991 0b_0001111110_000000,
6992 0b_0011000110_000000,
6993 0b_0001111110_000000,
6994 0b_0000000000_000000,
6995 0b_0000000000_000000,
6996 /* 0x86 */
6997 0b_0000111000_000000,
6998 0b_0001101100_000000,
6999 0b_0000111000_000000,
7000 0b_0001111100_000000,
7001 0b_0000000110_000000,
7002 0b_0001111110_000000,
7003 0b_0011000110_000000,
7004 0b_0001111110_000000,
7005 0b_0000000000_000000,
7006 0b_0000000000_000000,
7007 /* 0x87 */
7008 0b_0000000000_000000,
7009 0b_0000000000_000000,
7010 0b_0000000000_000000,
7011 0b_0001111100_000000,
7012 0b_0011000110_000000,
7013 0b_0011000000_000000,
7014 0b_0011000110_000000,
7015 0b_0001111100_000000,
7016 0b_0000110000_000000,
7017 0b_0001100000_000000,
7018 /* 0x88 */
7019 0b_0000111000_000000,
7020 0b_0001101100_000000,
7021 0b_0000000000_000000,
7022 0b_0001111100_000000,
7023 0b_0011000110_000000,
7024 0b_0011111110_000000,
7025 0b_0011000000_000000,
7026 0b_0001111100_000000,
7027 0b_0000000000_000000,
7028 0b_0000000000_000000,
7029 /* 0x89 */
7030 0b_0000000000_000000,
7031 0b_0001101100_000000,
7032 0b_0000000000_000000,
7033 0b_0001111100_000000,
7034 0b_0011000110_000000,
7035 0b_0011111110_000000,
7036 0b_0011000000_000000,
7037 0b_0001111100_000000,
7038 0b_0000000000_000000,
7039 0b_0000000000_000000,
7040 /* 0x8a */
7041 0b_0000110000_000000,
7042 0b_0000011000_000000,
7043 0b_0000000000_000000,
7044 0b_0001111100_000000,
7045 0b_0011000110_000000,
7046 0b_0011111110_000000,
7047 0b_0011000000_000000,
7048 0b_0001111100_000000,
7049 0b_0000000000_000000,
7050 0b_0000000000_000000,
7051 /* 0x8b */
7052 0b_0000000000_000000,
7053 0b_0011011000_000000,
7054 0b_0000000000_000000,
7055 0b_0001110000_000000,
7056 0b_0000110000_000000,
7057 0b_0000110000_000000,
7058 0b_0000110000_000000,
7059 0b_0001111000_000000,
7060 0b_0000000000_000000,
7061 0b_0000000000_000000,
7062 /* 0x8c */
7063 0b_0001110000_000000,
7064 0b_0011011000_000000,
7065 0b_0000000000_000000,
7066 0b_0001110000_000000,
7067 0b_0000110000_000000,
7068 0b_0000110000_000000,
7069 0b_0000110000_000000,
7070 0b_0001111000_000000,
7071 0b_0000000000_000000,
7072 0b_0000000000_000000,
7073 /* 0x8d */
7074 0b_0001100000_000000,
7075 0b_0000110000_000000,
7076 0b_0000000000_000000,
7077 0b_0001110000_000000,
7078 0b_0000110000_000000,
7079 0b_0000110000_000000,
7080 0b_0000110000_000000,
7081 0b_0001111000_000000,
7082 0b_0000000000_000000,
7083 0b_0000000000_000000,
7084 /* 0x8e */
7085 0b_0000000000_000000,
7086 0b_0001101100_000000,
7087 0b_0000000000_000000,
7088 0b_0001111100_000000,
7089 0b_0011000110_000000,
7090 0b_0011111110_000000,
7091 0b_0011000110_000000,
7092 0b_0011000110_000000,
7093 0b_0000000000_000000,
7094 0b_0000000000_000000,
7095 /* 0x8f */
7096 0b_0000111000_000000,
7097 0b_0001101100_000000,
7098 0b_0000111000_000000,
7099 0b_0001111100_000000,
7100 0b_0011000110_000000,
7101 0b_0011111110_000000,
7102 0b_0011000110_000000,
7103 0b_0011000110_000000,
7104 0b_0000000000_000000,
7105 0b_0000000000_000000,
7106 /* 0x90 */
7107 0b_0000011000_000000,
7108 0b_0000110000_000000,
7109 0b_0000000000_000000,
7110 0b_0011111110_000000,
7111 0b_0011000000_000000,
7112 0b_0011111100_000000,
7113 0b_0011000000_000000,
7114 0b_0011111110_000000,
7115 0b_0000000000_000000,
7116 0b_0000000000_000000,
7117 /* 0x91 */
7118 0b_0000000000_000000,
7119 0b_0000000000_000000,
7120 0b_0000000000_000000,
7121 0b_0011101110_000000,
7122 0b_0000111011_000000,
7123 0b_0011111111_000000,
7124 0b_0110111000_000000,
7125 0b_0011101110_000000,
7126 0b_0000000000_000000,
7127 0b_0000000000_000000,
7128 /* 0x92 */
7129 0b_0000000000_000000,
7130 0b_0001111110_000000,
7131 0b_0011011000_000000,
7132 0b_0110011000_000000,
7133 0b_0111111110_000000,
7134 0b_0110011000_000000,
7135 0b_0110011000_000000,
7136 0b_0110011110_000000,
7137 0b_0000000000_000000,
7138 0b_0000000000_000000,
7139 /* 0x93 */
7140 0b_0000111000_000000,
7141 0b_0001101100_000000,
7142 0b_0000000000_000000,
7143 0b_0001111100_000000,
7144 0b_0011000110_000000,
7145 0b_0011000110_000000,
7146 0b_0011000110_000000,
7147 0b_0001111100_000000,
7148 0b_0000000000_000000,
7149 0b_0000000000_000000,
7150 /* 0x94 */
7151 0b_0000000000_000000,
7152 0b_0001101100_000000,
7153 0b_0000000000_000000,
7154 0b_0001111100_000000,
7155 0b_0011000110_000000,
7156 0b_0011000110_000000,
7157 0b_0011000110_000000,
7158 0b_0001111100_000000,
7159 0b_0000000000_000000,
7160 0b_0000000000_000000,
7161 /* 0x95 */
7162 0b_0000110000_000000,
7163 0b_0000011000_000000,
7164 0b_0000000000_000000,
7165 0b_0001111100_000000,
7166 0b_0011000110_000000,
7167 0b_0011000110_000000,
7168 0b_0011000110_000000,
7169 0b_0001111100_000000,
7170 0b_0000000000_000000,
7171 0b_0000000000_000000,
7172 /* 0x96 */
7173 0b_0000111000_000000,
7174 0b_0001101100_000000,
7175 0b_0000000000_000000,
7176 0b_0011000110_000000,
7177 0b_0011000110_000000,
7178 0b_0011000110_000000,
7179 0b_0011000110_000000,
7180 0b_0001111110_000000,
7181 0b_0000000000_000000,
7182 0b_0000000000_000000,
7183 /* 0x97 */
7184 0b_0000110000_000000,
7185 0b_0000011000_000000,
7186 0b_0000000000_000000,
7187 0b_0011000110_000000,
7188 0b_0011000110_000000,
7189 0b_0011000110_000000,
7190 0b_0011000110_000000,
7191 0b_0001111110_000000,
7192 0b_0000000000_000000,
7193 0b_0000000000_000000,
7194 /* 0x98 */
7195 0b_0000000000_000000,
7196 0b_0001101100_000000,
7197 0b_0000000000_000000,
7198 0b_0011000110_000000,
7199 0b_0011000110_000000,
7200 0b_0011000110_000000,
7201 0b_0001111110_000000,
7202 0b_0000000110_000000,
7203 0b_0001111100_000000,
7204 0b_0000000000_000000,
7205 /* 0x99 */
7206 0b_0000000000_000000,
7207 0b_0001101100_000000,
7208 0b_0000000000_000000,
7209 0b_0001111100_000000,
7210 0b_0011000110_000000,
7211 0b_0011000110_000000,
7212 0b_0011000110_000000,
7213 0b_0001111100_000000,
7214 0b_0000000000_000000,
7215 0b_0000000000_000000,
7216 /* 0x9a */
7217 0b_0000000000_000000,
7218 0b_0001101100_000000,
7219 0b_0000000000_000000,
7220 0b_0011000110_000000,
7221 0b_0011000110_000000,
7222 0b_0011000110_000000,
7223 0b_0011000110_000000,
7224 0b_0001111110_000000,
7225 0b_0000000000_000000,
7226 0b_0000000000_000000,
7227 /* 0x9b */
7228 0b_0000000000_000000,
7229 0b_0000000000_000000,
7230 0b_0000010000_000000,
7231 0b_0001111100_000000,
7232 0b_0011010110_000000,
7233 0b_0011010000_000000,
7234 0b_0011010110_000000,
7235 0b_0001111100_000000,
7236 0b_0000010000_000000,
7237 0b_0000000000_000000,
7238 /* 0x9c */
7239 0b_0000000000_000000,
7240 0b_0000111100_000000,
7241 0b_0001100110_000000,
7242 0b_0001100000_000000,
7243 0b_0011111000_000000,
7244 0b_0001100000_000000,
7245 0b_0001100000_000000,
7246 0b_0011000000_000000,
7247 0b_0011111110_000000,
7248 0b_0000000000_000000,
7249 /* 0x9d */
7250 0b_0000000000_000000,
7251 0b_0110000110_000000,
7252 0b_0110000110_000000,
7253 0b_0011001100_000000,
7254 0b_0001111000_000000,
7255 0b_0011111100_000000,
7256 0b_0000110000_000000,
7257 0b_0011111100_000000,
7258 0b_0000110000_000000,
7259 0b_0000000000_000000,
7260 /* 0x9e */
7261 0b_0000000000_000000,
7262 0b_0111111100_000000,
7263 0b_0110000110_000000,
7264 0b_0110110110_000000,
7265 0b_0110110110_000000,
7266 0b_0111111100_000000,
7267 0b_0110110000_000000,
7268 0b_0110110000_000000,
7269 0b_0110011100_000000,
7270 0b_0000000000_000000,
7271 /* 0x9f */
7272 0b_0000000000_000000,
7273 0b_0000011100_000000,
7274 0b_0000110000_000000,
7275 0b_0000110000_000000,
7276 0b_0001111000_000000,
7277 0b_0000110000_000000,
7278 0b_0000110000_000000,
7279 0b_0000110000_000000,
7280 0b_0011100000_000000,
7281 0b_0000000000_000000,
7282 /* 0xa0 */
7283 0b_0000011000_000000,
7284 0b_0000110000_000000,
7285 0b_0000000000_000000,
7286 0b_0001111100_000000,
7287 0b_0000000110_000000,
7288 0b_0001111110_000000,
7289 0b_0011000110_000000,
7290 0b_0001111110_000000,
7291 0b_0000000000_000000,
7292 0b_0000000000_000000,
7293 /* 0xa1 */
7294 0b_0000110000_000000,
7295 0b_0001100000_000000,
7296 0b_0000000000_000000,
7297 0b_0001110000_000000,
7298 0b_0000110000_000000,
7299 0b_0000110000_000000,
7300 0b_0000110000_000000,
7301 0b_0001111000_000000,
7302 0b_0000000000_000000,
7303 0b_0000000000_000000,
7304 /* 0xa2 */
7305 0b_0000011000_000000,
7306 0b_0000110000_000000,
7307 0b_0000000000_000000,
7308 0b_0001111100_000000,
7309 0b_0011000110_000000,
7310 0b_0011000110_000000,
7311 0b_0011000110_000000,
7312 0b_0001111100_000000,
7313 0b_0000000000_000000,
7314 0b_0000000000_000000,
7315 /* 0xa3 */
7316 0b_0000011000_000000,
7317 0b_0000110000_000000,
7318 0b_0000000000_000000,
7319 0b_0011000110_000000,
7320 0b_0011000110_000000,
7321 0b_0011000110_000000,
7322 0b_0011000110_000000,
7323 0b_0001111110_000000,
7324 0b_0000000000_000000,
7325 0b_0000000000_000000,
7326 /* 0xa4 */
7327 0b_0001110110_000000,
7328 0b_0011011100_000000,
7329 0b_0000000000_000000,
7330 0b_0011111100_000000,
7331 0b_0011000110_000000,
7332 0b_0011000110_000000,
7333 0b_0011000110_000000,
7334 0b_0011000110_000000,
7335 0b_0000000000_000000,
7336 0b_0000000000_000000,
7337 /* 0xa5 */
7338 0b_0001110110_000000,
7339 0b_0011011100_000000,
7340 0b_0000000000_000000,
7341 0b_0011100110_000000,
7342 0b_0011110110_000000,
7343 0b_0011011110_000000,
7344 0b_0011001110_000000,
7345 0b_0011000110_000000,
7346 0b_0000000000_000000,
7347 0b_0000000000_000000,
7348 /* 0xa6 */
7349 0b_0000000000_000000,
7350 0b_0001111000_000000,
7351 0b_0000001100_000000,
7352 0b_0001111100_000000,
7353 0b_0011001100_000000,
7354 0b_0001111100_000000,
7355 0b_0000000000_000000,
7356 0b_0000000000_000000,
7357 0b_0000000000_000000,
7358 0b_0000000000_000000,
7359 /* 0xa7 */
7360 0b_0000000000_000000,
7361 0b_0001111000_000000,
7362 0b_0011001100_000000,
7363 0b_0011001100_000000,
7364 0b_0011001100_000000,
7365 0b_0001111000_000000,
7366 0b_0000000000_000000,
7367 0b_0000000000_000000,
7368 0b_0000000000_000000,
7369 0b_0000000000_000000,
7370 /* 0xa8 */
7371 0b_0000000000_000000,
7372 0b_0000110000_000000,
7373 0b_0000000000_000000,
7374 0b_0000110000_000000,
7375 0b_0001100000_000000,
7376 0b_0011000000_000000,
7377 0b_0011000000_000000,
7378 0b_0011001100_000000,
7379 0b_0001111000_000000,
7380 0b_0000000000_000000,
7381 /* 0xa9 */
7382 0b_0000000000_000000,
7383 0b_0000000000_000000,
7384 0b_0000000000_000000,
7385 0b_0000000000_000000,
7386 0b_0011111110_000000,
7387 0b_0011000000_000000,
7388 0b_0011000000_000000,
7389 0b_0011000000_000000,
7390 0b_0000000000_000000,
7391 0b_0000000000_000000,
7392 /* 0xaa */
7393 0b_0000000000_000000,
7394 0b_0000000000_000000,
7395 0b_0000000000_000000,
7396 0b_0000000000_000000,
7397 0b_0011111110_000000,
7398 0b_0000000110_000000,
7399 0b_0000000110_000000,
7400 0b_0000000110_000000,
7401 0b_0000000000_000000,
7402 0b_0000000000_000000,
7403 /* 0xab */
7404 0b_0000000000_000000,
7405 0b_0010000010_000000,
7406 0b_0010000100_000000,
7407 0b_0010001000_000000,
7408 0b_0010010000_000000,
7409 0b_0000101100_000000,
7410 0b_0001000110_000000,
7411 0b_0010001100_000000,
7412 0b_0100001110_000000,
7413 0b_0000000000_000000,
7414 /* 0xac */
7415 0b_0000000000_000000,
7416 0b_0010000010_000000,
7417 0b_0010000100_000000,
7418 0b_0010001000_000000,
7419 0b_0010010000_000000,
7420 0b_0000101010_000000,
7421 0b_0001001010_000000,
7422 0b_0010001110_000000,
7423 0b_0100000010_000000,
7424 0b_0000000000_000000,
7425 /* 0xad */
7426 0b_0000000000_000000,
7427 0b_0000110000_000000,
7428 0b_0000000000_000000,
7429 0b_0000110000_000000,
7430 0b_0000110000_000000,
7431 0b_0001111000_000000,
7432 0b_0001111000_000000,
7433 0b_0000110000_000000,
7434 0b_0000000000_000000,
7435 0b_0000000000_000000,
7436 /* 0xae */
7437 0b_0000000000_000000,
7438 0b_0000000000_000000,
7439 0b_0001100110_000000,
7440 0b_0011001100_000000,
7441 0b_0110011000_000000,
7442 0b_0011001100_000000,
7443 0b_0001100110_000000,
7444 0b_0000000000_000000,
7445 0b_0000000000_000000,
7446 0b_0000000000_000000,
7447 /* 0xaf */
7448 0b_0000000000_000000,
7449 0b_0000000000_000000,
7450 0b_0110011000_000000,
7451 0b_0011001100_000000,
7452 0b_0001100110_000000,
7453 0b_0011001100_000000,
7454 0b_0110011000_000000,
7455 0b_0000000000_000000,
7456 0b_0000000000_000000,
7457 0b_0000000000_000000,
7458 /* 0xb0 */
7459 0b_0010001000_000000,
7460 0b_1000100010_000000,
7461 0b_0010001000_000000,
7462 0b_1000100010_000000,
7463 0b_0010001000_000000,
7464 0b_1000100010_000000,
7465 0b_0010001000_000000,
7466 0b_1000100010_000000,
7467 0b_0010001000_000000,
7468 0b_1000100010_000000,
7469 /* 0xb1 */
7470 0b_0101010101_000000,
7471 0b_1010101010_000000,
7472 0b_0101010101_000000,
7473 0b_1010101010_000000,
7474 0b_0101010101_000000,
7475 0b_1010101010_000000,
7476 0b_0101010101_000000,
7477 0b_1010101010_000000,
7478 0b_0101010101_000000,
7479 0b_1010101010_000000,
7480 /* 0xb2 */
7481 0b_1011101110_000000,
7482 0b_1110111011_000000,
7483 0b_1011101110_000000,
7484 0b_1110111011_000000,
7485 0b_1011101110_000000,
7486 0b_1110111011_000000,
7487 0b_1011101110_000000,
7488 0b_1110111011_000000,
7489 0b_1011101110_000000,
7490 0b_1110111011_000000,
7491 /* 0xb3 */
7492 0b_0000110000_000000,
7493 0b_0000110000_000000,
7494 0b_0000110000_000000,
7495 0b_0000110000_000000,
7496 0b_0000110000_000000,
7497 0b_0000110000_000000,
7498 0b_0000110000_000000,
7499 0b_0000110000_000000,
7500 0b_0000110000_000000,
7501 0b_0000110000_000000,
7502 /* 0xb4 */
7503 0b_0000110000_000000,
7504 0b_0000110000_000000,
7505 0b_0000110000_000000,
7506 0b_0000110000_000000,
7507 0b_1111110000_000000,
7508 0b_1111110000_000000,
7509 0b_0000110000_000000,
7510 0b_0000110000_000000,
7511 0b_0000110000_000000,
7512 0b_0000110000_000000,
7513 /* 0xb5 */
7514 0b_0000110000_000000,
7515 0b_0000110000_000000,
7516 0b_1111110000_000000,
7517 0b_1111110000_000000,
7518 0b_0000110000_000000,
7519 0b_0000110000_000000,
7520 0b_1111110000_000000,
7521 0b_1111110000_000000,
7522 0b_0000110000_000000,
7523 0b_0000110000_000000,
7524 /* 0xb6 */
7525 0b_0011001100_000000,
7526 0b_0011001100_000000,
7527 0b_0011001100_000000,
7528 0b_0011001100_000000,
7529 0b_1111001100_000000,
7530 0b_1111001100_000000,
7531 0b_0011001100_000000,
7532 0b_0011001100_000000,
7533 0b_0011001100_000000,
7534 0b_0011001100_000000,
7535 /* 0xb7 */
7536 0b_0000000000_000000,
7537 0b_0000000000_000000,
7538 0b_0000000000_000000,
7539 0b_0000000000_000000,
7540 0b_1111111100_000000,
7541 0b_1111111100_000000,
7542 0b_0011001100_000000,
7543 0b_0011001100_000000,
7544 0b_0011001100_000000,
7545 0b_0011001100_000000,
7546 /* 0xb8 */
7547 0b_0000000000_000000,
7548 0b_0000000000_000000,
7549 0b_1111110000_000000,
7550 0b_1111110000_000000,
7551 0b_0000110000_000000,
7552 0b_0000110000_000000,
7553 0b_1111110000_000000,
7554 0b_1111110000_000000,
7555 0b_0000110000_000000,
7556 0b_0000110000_000000,
7557 /* 0xb9 */
7558 0b_0011001100_000000,
7559 0b_0011001100_000000,
7560 0b_1111001100_000000,
7561 0b_1111001100_000000,
7562 0b_0000001100_000000,
7563 0b_0000001100_000000,
7564 0b_1111001100_000000,
7565 0b_1111001100_000000,
7566 0b_0011001100_000000,
7567 0b_0011001100_000000,
7568 /* 0xba */
7569 0b_0011001100_000000,
7570 0b_0011001100_000000,
7571 0b_0011001100_000000,
7572 0b_0011001100_000000,
7573 0b_0011001100_000000,
7574 0b_0011001100_000000,
7575 0b_0011001100_000000,
7576 0b_0011001100_000000,
7577 0b_0011001100_000000,
7578 0b_0011001100_000000,
7579 /* 0xbb */
7580 0b_0000000000_000000,
7581 0b_0000000000_000000,
7582 0b_1111111100_000000,
7583 0b_1111111100_000000,
7584 0b_0000001100_000000,
7585 0b_0000001100_000000,
7586 0b_1111001100_000000,
7587 0b_1111001100_000000,
7588 0b_0011001100_000000,
7589 0b_0011001100_000000,
7590 /* 0xbc */
7591 0b_0011001100_000000,
7592 0b_0011001100_000000,
7593 0b_1111001100_000000,
7594 0b_1111001100_000000,
7595 0b_0000001100_000000,
7596 0b_0000001100_000000,
7597 0b_1111111100_000000,
7598 0b_1111111100_000000,
7599 0b_0000000000_000000,
7600 0b_0000000000_000000,
7601 /* 0xbd */
7602 0b_0011001100_000000,
7603 0b_0011001100_000000,
7604 0b_0011001100_000000,
7605 0b_0011001100_000000,
7606 0b_1111111100_000000,
7607 0b_1111111100_000000,
7608 0b_0000000000_000000,
7609 0b_0000000000_000000,
7610 0b_0000000000_000000,
7611 0b_0000000000_000000,
7612 /* 0xbe */
7613 0b_0001100000_000000,
7614 0b_0001100000_000000,
7615 0b_1111100000_000000,
7616 0b_1111100000_000000,
7617 0b_0001100000_000000,
7618 0b_0001100000_000000,
7619 0b_1111100000_000000,
7620 0b_1111100000_000000,
7621 0b_0000000000_000000,
7622 0b_0000000000_000000,
7623 /* 0xbf */
7624 0b_0000000000_000000,
7625 0b_0000000000_000000,
7626 0b_0000000000_000000,
7627 0b_0000000000_000000,
7628 0b_1111110000_000000,
7629 0b_1111110000_000000,
7630 0b_0000110000_000000,
7631 0b_0000110000_000000,
7632 0b_0000110000_000000,
7633 0b_0000110000_000000,
7634 /* 0xc0 */
7635 0b_0000110000_000000,
7636 0b_0000110000_000000,
7637 0b_0000110000_000000,
7638 0b_0000110000_000000,
7639 0b_0000111111_000000,
7640 0b_0000111111_000000,
7641 0b_0000000000_000000,
7642 0b_0000000000_000000,
7643 0b_0000000000_000000,
7644 0b_0000000000_000000,
7645 /* 0xc1 */
7646 0b_0000110000_000000,
7647 0b_0000110000_000000,
7648 0b_0000110000_000000,
7649 0b_0000110000_000000,
7650 0b_1111111111_000000,
7651 0b_1111111111_000000,
7652 0b_0000000000_000000,
7653 0b_0000000000_000000,
7654 0b_0000000000_000000,
7655 0b_0000000000_000000,
7656 /* 0xc2 */
7657 0b_0000000000_000000,
7658 0b_0000000000_000000,
7659 0b_0000000000_000000,
7660 0b_0000000000_000000,
7661 0b_1111111111_000000,
7662 0b_1111111111_000000,
7663 0b_0000110000_000000,
7664 0b_0000110000_000000,
7665 0b_0000110000_000000,
7666 0b_0000110000_000000,
7667 /* 0xc3 */
7668 0b_0000110000_000000,
7669 0b_0000110000_000000,
7670 0b_0000110000_000000,
7671 0b_0000110000_000000,
7672 0b_0000111111_000000,
7673 0b_0000111111_000000,
7674 0b_0000110000_000000,
7675 0b_0000110000_000000,
7676 0b_0000110000_000000,
7677 0b_0000110000_000000,
7678 /* 0xc4 */
7679 0b_0000000000_000000,
7680 0b_0000000000_000000,
7681 0b_0000000000_000000,
7682 0b_0000000000_000000,
7683 0b_1111111111_000000,
7684 0b_1111111111_000000,
7685 0b_0000000000_000000,
7686 0b_0000000000_000000,
7687 0b_0000000000_000000,
7688 0b_0000000000_000000,
7689 /* 0xc5 */
7690 0b_0000110000_000000,
7691 0b_0000110000_000000,
7692 0b_0000110000_000000,
7693 0b_0000110000_000000,
7694 0b_1111111111_000000,
7695 0b_1111111111_000000,
7696 0b_0000110000_000000,
7697 0b_0000110000_000000,
7698 0b_0000110000_000000,
7699 0b_0000110000_000000,
7700 /* 0xc6 */
7701 0b_0000110000_000000,
7702 0b_0000110000_000000,
7703 0b_0000111111_000000,
7704 0b_0000111111_000000,
7705 0b_0000110000_000000,
7706 0b_0000110000_000000,
7707 0b_0000111111_000000,
7708 0b_0000111111_000000,
7709 0b_0000110000_000000,
7710 0b_0000110000_000000,
7711 /* 0xc7 */
7712 0b_0011001100_000000,
7713 0b_0011001100_000000,
7714 0b_0011001100_000000,
7715 0b_0011001100_000000,
7716 0b_0011001111_000000,
7717 0b_0011001111_000000,
7718 0b_0011001100_000000,
7719 0b_0011001100_000000,
7720 0b_0011001100_000000,
7721 0b_0011001100_000000,
7722 /* 0xc8 */
7723 0b_0011001100_000000,
7724 0b_0011001100_000000,
7725 0b_0011001111_000000,
7726 0b_0011001111_000000,
7727 0b_0011000000_000000,
7728 0b_0011000000_000000,
7729 0b_0011111111_000000,
7730 0b_0011111111_000000,
7731 0b_0000000000_000000,
7732 0b_0000000000_000000,
7733 /* 0xc9 */
7734 0b_0000000000_000000,
7735 0b_0000000000_000000,
7736 0b_0011111111_000000,
7737 0b_0011111111_000000,
7738 0b_0011000000_000000,
7739 0b_0011000000_000000,
7740 0b_0011001111_000000,
7741 0b_0011001111_000000,
7742 0b_0011001100_000000,
7743 0b_0011001100_000000,
7744 /* 0xca */
7745 0b_0011001100_000000,
7746 0b_0011001100_000000,
7747 0b_1111001111_000000,
7748 0b_1111001111_000000,
7749 0b_0000000000_000000,
7750 0b_0000000000_000000,
7751 0b_1111111111_000000,
7752 0b_1111111111_000000,
7753 0b_0000000000_000000,
7754 0b_0000000000_000000,
7755 /* 0xcb */
7756 0b_0000000000_000000,
7757 0b_0000000000_000000,
7758 0b_1111111111_000000,
7759 0b_1111111111_000000,
7760 0b_0000000000_000000,
7761 0b_0000000000_000000,
7762 0b_1111001111_000000,
7763 0b_1111001111_000000,
7764 0b_0011001100_000000,
7765 0b_0011001100_000000,
7766 /* 0xcc */
7767 0b_0011001100_000000,
7768 0b_0011001100_000000,
7769 0b_0011001111_000000,
7770 0b_0011001111_000000,
7771 0b_0011000000_000000,
7772 0b_0011000000_000000,
7773 0b_0011001111_000000,
7774 0b_0011001111_000000,
7775 0b_0011001100_000000,
7776 0b_0011001100_000000,
7777 /* 0xcd */
7778 0b_0000000000_000000,
7779 0b_0000000000_000000,
7780 0b_1111111111_000000,
7781 0b_1111111111_000000,
7782 0b_0000000000_000000,
7783 0b_0000000000_000000,
7784 0b_1111111111_000000,
7785 0b_1111111111_000000,
7786 0b_0000000000_000000,
7787 0b_0000000000_000000,
7788 /* 0xce */
7789 0b_0011001100_000000,
7790 0b_0011001100_000000,
7791 0b_1111001111_000000,
7792 0b_1111001111_000000,
7793 0b_0000000000_000000,
7794 0b_0000000000_000000,
7795 0b_1111001111_000000,
7796 0b_1111001111_000000,
7797 0b_0011001100_000000,
7798 0b_0011001100_000000,
7799 /* 0xcf */
7800 0b_0000110000_000000,
7801 0b_0000110000_000000,
7802 0b_1111111111_000000,
7803 0b_1111111111_000000,
7804 0b_0000000000_000000,
7805 0b_0000000000_000000,
7806 0b_1111111111_000000,
7807 0b_1111111111_000000,
7808 0b_0000000000_000000,
7809 0b_0000000000_000000,
7810 /* 0xd0 */
7811 0b_0011001100_000000,
7812 0b_0011001100_000000,
7813 0b_0011001100_000000,
7814 0b_0011001100_000000,
7815 0b_1111111111_000000,
7816 0b_1111111111_000000,
7817 0b_0000000000_000000,
7818 0b_0000000000_000000,
7819 0b_0000000000_000000,
7820 0b_0000000000_000000,
7821 /* 0xd1 */
7822 0b_0000000000_000000,
7823 0b_0000000000_000000,
7824 0b_1111111111_000000,
7825 0b_1111111111_000000,
7826 0b_0000000000_000000,
7827 0b_0000000000_000000,
7828 0b_1111111111_000000,
7829 0b_1111111111_000000,
7830 0b_0000110000_000000,
7831 0b_0000110000_000000,
7832 /* 0xd2 */
7833 0b_0000000000_000000,
7834 0b_0000000000_000000,
7835 0b_0000000000_000000,
7836 0b_0000000000_000000,
7837 0b_1111111111_000000,
7838 0b_1111111111_000000,
7839 0b_0011001100_000000,
7840 0b_0011001100_000000,
7841 0b_0011001100_000000,
7842 0b_0011001100_000000,
7843 /* 0xd3 */
7844 0b_0011001100_000000,
7845 0b_0011001100_000000,
7846 0b_0011001100_000000,
7847 0b_0011001100_000000,
7848 0b_0011111111_000000,
7849 0b_0011111111_000000,
7850 0b_0000000000_000000,
7851 0b_0000000000_000000,
7852 0b_0000000000_000000,
7853 0b_0000000000_000000,
7854 /* 0xd4 */
7855 0b_0000110000_000000,
7856 0b_0000110000_000000,
7857 0b_0000111111_000000,
7858 0b_0000111111_000000,
7859 0b_0000110000_000000,
7860 0b_0000110000_000000,
7861 0b_0000111111_000000,
7862 0b_0000111111_000000,
7863 0b_0000000000_000000,
7864 0b_0000000000_000000,
7865 /* 0xd5 */
7866 0b_0000000000_000000,
7867 0b_0000000000_000000,
7868 0b_0000111111_000000,
7869 0b_0000111111_000000,
7870 0b_0000110000_000000,
7871 0b_0000110000_000000,
7872 0b_0000111111_000000,
7873 0b_0000111111_000000,
7874 0b_0000110000_000000,
7875 0b_0000110000_000000,
7876 /* 0xd6 */
7877 0b_0000000000_000000,
7878 0b_0000000000_000000,
7879 0b_0000000000_000000,
7880 0b_0000000000_000000,
7881 0b_0011111111_000000,
7882 0b_0011111111_000000,
7883 0b_0011001100_000000,
7884 0b_0011001100_000000,
7885 0b_0011001100_000000,
7886 0b_0011001100_000000,
7887 /* 0xd7 */
7888 0b_0011001100_000000,
7889 0b_0011001100_000000,
7890 0b_0011001100_000000,
7891 0b_0011001100_000000,
7892 0b_1111001111_000000,
7893 0b_1111001111_000000,
7894 0b_0011001100_000000,
7895 0b_0011001100_000000,
7896 0b_0011001100_000000,
7897 0b_0011001100_000000,
7898 /* 0xd8 */
7899 0b_0000110000_000000,
7900 0b_0000110000_000000,
7901 0b_1111111111_000000,
7902 0b_1111111111_000000,
7903 0b_0000000000_000000,
7904 0b_0000000000_000000,
7905 0b_1111111111_000000,
7906 0b_1111111111_000000,
7907 0b_0000110000_000000,
7908 0b_0000110000_000000,
7909 /* 0xd9 */
7910 0b_0000110000_000000,
7911 0b_0000110000_000000,
7912 0b_0000110000_000000,
7913 0b_0000110000_000000,
7914 0b_1111110000_000000,
7915 0b_1111110000_000000,
7916 0b_0000000000_000000,
7917 0b_0000000000_000000,
7918 0b_0000000000_000000,
7919 0b_0000000000_000000,
7920 /* 0xda */
7921 0b_0000000000_000000,
7922 0b_0000000000_000000,
7923 0b_0000000000_000000,
7924 0b_0000000000_000000,
7925 0b_0000111111_000000,
7926 0b_0000111111_000000,
7927 0b_0000110000_000000,
7928 0b_0000110000_000000,
7929 0b_0000110000_000000,
7930 0b_0000110000_000000,
7931 /* 0xdb */
7932 0b_1111111111_000000,
7933 0b_1111111111_000000,
7934 0b_1111111111_000000,
7935 0b_1111111111_000000,
7936 0b_1111111111_000000,
7937 0b_1111111111_000000,
7938 0b_1111111111_000000,
7939 0b_1111111111_000000,
7940 0b_1111111111_000000,
7941 0b_1111111111_000000,
7942 /* 0xdc */
7943 0b_0000000000_000000,
7944 0b_0000000000_000000,
7945 0b_0000000000_000000,
7946 0b_0000000000_000000,
7947 0b_0000000000_000000,
7948 0b_1111111111_000000,
7949 0b_1111111111_000000,
7950 0b_1111111111_000000,
7951 0b_1111111111_000000,
7952 0b_1111111111_000000,
7953 /* 0xdd */
7954 0b_1111100000_000000,
7955 0b_1111100000_000000,
7956 0b_1111100000_000000,
7957 0b_1111100000_000000,
7958 0b_1111100000_000000,
7959 0b_1111100000_000000,
7960 0b_1111100000_000000,
7961 0b_1111100000_000000,
7962 0b_1111100000_000000,
7963 0b_1111100000_000000,
7964 /* 0xde */
7965 0b_0000011111_000000,
7966 0b_0000011111_000000,
7967 0b_0000011111_000000,
7968 0b_0000011111_000000,
7969 0b_0000011111_000000,
7970 0b_0000011111_000000,
7971 0b_0000011111_000000,
7972 0b_0000011111_000000,
7973 0b_0000011111_000000,
7974 0b_0000011111_000000,
7975 /* 0xdf */
7976 0b_1111111111_000000,
7977 0b_1111111111_000000,
7978 0b_1111111111_000000,
7979 0b_1111111111_000000,
7980 0b_1111111111_000000,
7981 0b_0000000000_000000,
7982 0b_0000000000_000000,
7983 0b_0000000000_000000,
7984 0b_0000000000_000000,
7985 0b_0000000000_000000,
7986 /* 0xe0 */
7987 0b_0000000000_000000,
7988 0b_0000000000_000000,
7989 0b_0000000000_000000,
7990 0b_0001110110_000000,
7991 0b_0011011100_000000,
7992 0b_0011001000_000000,
7993 0b_0011011100_000000,
7994 0b_0001110110_000000,
7995 0b_0000000000_000000,
7996 0b_0000000000_000000,
7997 /* 0xe1 */
7998 0b_0000000000_000000,
7999 0b_0001111000_000000,
8000 0b_0011001100_000000,
8001 0b_0011001100_000000,
8002 0b_0011011000_000000,
8003 0b_0011001100_000000,
8004 0b_0011000110_000000,
8005 0b_0011011100_000000,
8006 0b_0011000000_000000,
8007 0b_0000000000_000000,
8008 /* 0xe2 */
8009 0b_0000000000_000000,
8010 0b_0011111110_000000,
8011 0b_0011000110_000000,
8012 0b_0011000000_000000,
8013 0b_0011000000_000000,
8014 0b_0011000000_000000,
8015 0b_0011000000_000000,
8016 0b_0011000000_000000,
8017 0b_0000000000_000000,
8018 0b_0000000000_000000,
8019 /* 0xe3 */
8020 0b_0000000000_000000,
8021 0b_0000000000_000000,
8022 0b_0111111110_000000,
8023 0b_0011001100_000000,
8024 0b_0011001100_000000,
8025 0b_0011001100_000000,
8026 0b_0011001100_000000,
8027 0b_0011001100_000000,
8028 0b_0000000000_000000,
8029 0b_0000000000_000000,
8030 /* 0xe4 */
8031 0b_0000000000_000000,
8032 0b_0011111110_000000,
8033 0b_0001100000_000000,
8034 0b_0000110000_000000,
8035 0b_0000011000_000000,
8036 0b_0000110000_000000,
8037 0b_0001100000_000000,
8038 0b_0011111110_000000,
8039 0b_0000000000_000000,
8040 0b_0000000000_000000,
8041 /* 0xe5 */
8042 0b_0000000000_000000,
8043 0b_0000000000_000000,
8044 0b_0000000000_000000,
8045 0b_0001111110_000000,
8046 0b_0011011000_000000,
8047 0b_0011001100_000000,
8048 0b_0011001100_000000,
8049 0b_0001111000_000000,
8050 0b_0000000000_000000,
8051 0b_0000000000_000000,
8052 /* 0xe6 */
8053 0b_0000000000_000000,
8054 0b_0000000000_000000,
8055 0b_0000000000_000000,
8056 0b_0110001100_000000,
8057 0b_0110001100_000000,
8058 0b_0110011100_000000,
8059 0b_0111110110_000000,
8060 0b_0110000000_000000,
8061 0b_0110000000_000000,
8062 0b_0000000000_000000,
8063 /* 0xe7 */
8064 0b_0000000000_000000,
8065 0b_0000000000_000000,
8066 0b_0000000000_000000,
8067 0b_0011111100_000000,
8068 0b_0000110000_000000,
8069 0b_0000110000_000000,
8070 0b_0000110000_000000,
8071 0b_0000011000_000000,
8072 0b_0000000000_000000,
8073 0b_0000000000_000000,
8074 /* 0xe8 */
8075 0b_0000000000_000000,
8076 0b_0001111000_000000,
8077 0b_0000110000_000000,
8078 0b_0011111100_000000,
8079 0b_0110110110_000000,
8080 0b_0110110110_000000,
8081 0b_0011111100_000000,
8082 0b_0000110000_000000,
8083 0b_0001111000_000000,
8084 0b_0000000000_000000,
8085 /* 0xe9 */
8086 0b_0000000000_000000,
8087 0b_0001111000_000000,
8088 0b_0011001100_000000,
8089 0b_0011001100_000000,
8090 0b_0011111100_000000,
8091 0b_0011001100_000000,
8092 0b_0011001100_000000,
8093 0b_0001111000_000000,
8094 0b_0000000000_000000,
8095 0b_0000000000_000000,
8096 /* 0xea */
8097 0b_0000000000_000000,
8098 0b_0001111100_000000,
8099 0b_0011000110_000000,
8100 0b_0011000110_000000,
8101 0b_0011000110_000000,
8102 0b_0011000110_000000,
8103 0b_0001101100_000000,
8104 0b_0011101110_000000,
8105 0b_0000000000_000000,
8106 0b_0000000000_000000,
8107 /* 0xeb */
8108 0b_0000000000_000000,
8109 0b_0001111100_000000,
8110 0b_0000110000_000000,
8111 0b_0000011000_000000,
8112 0b_0001111100_000000,
8113 0b_0011000110_000000,
8114 0b_0011000110_000000,
8115 0b_0001111100_000000,
8116 0b_0000000000_000000,
8117 0b_0000000000_000000,
8118 /* 0xec */
8119 0b_0000000000_000000,
8120 0b_0000000000_000000,
8121 0b_0000000000_000000,
8122 0b_0011101110_000000,
8123 0b_0110011011_000000,
8124 0b_0110010011_000000,
8125 0b_0110110011_000000,
8126 0b_0011101110_000000,
8127 0b_0000000000_000000,
8128 0b_0000000000_000000,
8129 /* 0xed */
8130 0b_0000000000_000000,
8131 0b_0000000000_000000,
8132 0b_0000000110_000000,
8133 0b_0011111100_000000,
8134 0b_0110011110_000000,
8135 0b_0110110110_000000,
8136 0b_0111100110_000000,
8137 0b_0011111100_000000,
8138 0b_0110000000_000000,
8139 0b_0000000000_000000,
8140 /* 0xee */
8141 0b_0000000000_000000,
8142 0b_0000000000_000000,
8143 0b_0000000000_000000,
8144 0b_0001111100_000000,
8145 0b_0011000000_000000,
8146 0b_0001111000_000000,
8147 0b_0011000000_000000,
8148 0b_0001111100_000000,
8149 0b_0000000000_000000,
8150 0b_0000000000_000000,
8151 /* 0xef */
8152 0b_0000000000_000000,
8153 0b_0001111100_000000,
8154 0b_0011000110_000000,
8155 0b_0011000110_000000,
8156 0b_0011000110_000000,
8157 0b_0011000110_000000,
8158 0b_0011000110_000000,
8159 0b_0011000110_000000,
8160 0b_0000000000_000000,
8161 0b_0000000000_000000,
8162 /* 0xf0 */
8163 0b_0000000000_000000,
8164 0b_0000000000_000000,
8165 0b_0011111100_000000,
8166 0b_0000000000_000000,
8167 0b_0011111100_000000,
8168 0b_0000000000_000000,
8169 0b_0011111100_000000,
8170 0b_0000000000_000000,
8171 0b_0000000000_000000,
8172 0b_0000000000_000000,
8173 /* 0xf1 */
8174 0b_0000000000_000000,
8175 0b_0000110000_000000,
8176 0b_0000110000_000000,
8177 0b_0011111100_000000,
8178 0b_0000110000_000000,
8179 0b_0000110000_000000,
8180 0b_0000000000_000000,
8181 0b_0011111100_000000,
8182 0b_0000000000_000000,
8183 0b_0000000000_000000,
8184 /* 0xf2 */
8185 0b_0000000000_000000,
8186 0b_0000011000_000000,
8187 0b_0000110000_000000,
8188 0b_0001100000_000000,
8189 0b_0000110000_000000,
8190 0b_0000011000_000000,
8191 0b_0000000000_000000,
8192 0b_0011111100_000000,
8193 0b_0000000000_000000,
8194 0b_0000000000_000000,
8195 /* 0xf3 */
8196 0b_0000000000_000000,
8197 0b_0001100000_000000,
8198 0b_0000110000_000000,
8199 0b_0000011000_000000,
8200 0b_0000110000_000000,
8201 0b_0001100000_000000,
8202 0b_0000000000_000000,
8203 0b_0011111100_000000,
8204 0b_0000000000_000000,
8205 0b_0000000000_000000,
8206 /* 0xf4 */
8207 0b_0000000000_000000,
8208 0b_0000011100_000000,
8209 0b_0000110110_000000,
8210 0b_0000110110_000000,
8211 0b_0000110000_000000,
8212 0b_0000110000_000000,
8213 0b_0000110000_000000,
8214 0b_0000110000_000000,
8215 0b_0000110000_000000,
8216 0b_0000110000_000000,
8217 /* 0xf5 */
8218 0b_0000110000_000000,
8219 0b_0000110000_000000,
8220 0b_0000110000_000000,
8221 0b_0000110000_000000,
8222 0b_0000110000_000000,
8223 0b_0000110000_000000,
8224 0b_0110110000_000000,
8225 0b_0110110000_000000,
8226 0b_0011100000_000000,
8227 0b_0000000000_000000,
8228 /* 0xf6 */
8229 0b_0000000000_000000,
8230 0b_0000000000_000000,
8231 0b_0000110000_000000,
8232 0b_0000000000_000000,
8233 0b_0011111100_000000,
8234 0b_0000000000_000000,
8235 0b_0000110000_000000,
8236 0b_0000000000_000000,
8237 0b_0000000000_000000,
8238 0b_0000000000_000000,
8239 /* 0xf7 */
8240 0b_0000000000_000000,
8241 0b_0011100000_000000,
8242 0b_0110110110_000000,
8243 0b_0000011100_000000,
8244 0b_0000000000_000000,
8245 0b_0011100000_000000,
8246 0b_0110110110_000000,
8247 0b_0000011100_000000,
8248 0b_0000000000_000000,
8249 0b_0000000000_000000,
8250 /* 0xf8 */
8251 0b_0000000000_000000,
8252 0b_0000111000_000000,
8253 0b_0001101100_000000,
8254 0b_0001101100_000000,
8255 0b_0000111000_000000,
8256 0b_0000000000_000000,
8257 0b_0000000000_000000,
8258 0b_0000000000_000000,
8259 0b_0000000000_000000,
8260 0b_0000000000_000000,
8261 /* 0xf9 */
8262 0b_0000000000_000000,
8263 0b_0000000000_000000,
8264 0b_0000000000_000000,
8265 0b_0000110000_000000,
8266 0b_0000110000_000000,
8267 0b_0000000000_000000,
8268 0b_0000000000_000000,
8269 0b_0000000000_000000,
8270 0b_0000000000_000000,
8271 0b_0000000000_000000,
8272 /* 0xfa */
8273 0b_0000000000_000000,
8274 0b_0000000000_000000,
8275 0b_0000000000_000000,
8276 0b_0000000000_000000,
8277 0b_0000110000_000000,
8278 0b_0000000000_000000,
8279 0b_0000000000_000000,
8280 0b_0000000000_000000,
8281 0b_0000000000_000000,
8282 0b_0000000000_000000,
8283 /* 0xfb */
8284 0b_0000000000_000000,
8285 0b_0000011111_000000,
8286 0b_0000011000_000000,
8287 0b_0000011000_000000,
8288 0b_0110011000_000000,
8289 0b_0011011000_000000,
8290 0b_0001111000_000000,
8291 0b_0000111000_000000,
8292 0b_0000011000_000000,
8293 0b_0000001000_000000,
8294 /* 0xfc */
8295 0b_0000000000_000000,
8296 0b_0011111000_000000,
8297 0b_0011001100_000000,
8298 0b_0011001100_000000,
8299 0b_0011001100_000000,
8300 0b_0011001100_000000,
8301 0b_0000000000_000000,
8302 0b_0000000000_000000,
8303 0b_0000000000_000000,
8304 0b_0000000000_000000,
8305 /* 0xfd */
8306 0b_0000000000_000000,
8307 0b_0001111000_000000,
8308 0b_0000001100_000000,
8309 0b_0000111000_000000,
8310 0b_0001100000_000000,
8311 0b_0001111100_000000,
8312 0b_0000000000_000000,
8313 0b_0000000000_000000,
8314 0b_0000000000_000000,
8315 0b_0000000000_000000,
8316 /* 0xfe */
8317 0b_0000000000_000000,
8318 0b_0000000000_000000,
8319 0b_0000000000_000000,
8320 0b_0001111000_000000,
8321 0b_0001111000_000000,
8322 0b_0001111000_000000,
8323 0b_0001111000_000000,
8324 0b_0000000000_000000,
8325 0b_0000000000_000000,
8326 0b_0000000000_000000,
8327 /* 0xff */
8328 0b_0000000000_000000,
8329 0b_0000000000_000000,
8330 0b_0000000000_000000,
8331 0b_0000000000_000000,
8332 0b_0000000000_000000,
8333 0b_0000000000_000000,
8334 0b_0000000000_000000,
8335 0b_0000000000_000000,
8336 0b_0000000000_000000,
8337 0b_0000000000_000000,