Browse Source

Merge branch 'translation'

Joel Bodenmann 4 years ago
parent
commit
6d2492aa93

+ 3 - 0
demos/modules/gtrans/basic/demo.mk

@@ -0,0 +1,3 @@
1
+DEMODIR = $(GFXLIB)/demos/modules/gtrans/basic
2
+GFXINC +=   $(DEMODIR)
3
+GFXSRC +=	$(DEMODIR)/main.c

+ 51 - 0
demos/modules/gtrans/basic/gfxconf.h

@@ -0,0 +1,51 @@
1
+/*
2
+ * Copyright (c) 2012, 2013, Joel Bodenmann aka Tectu <joel@unormal.org>
3
+ * Copyright (c) 2012, 2013, Andrew Hannam aka inmarket
4
+ *
5
+ * All rights reserved.
6
+ *
7
+ * Redistribution and use in source and binary forms, with or without
8
+ * modification, are permitted provided that the following conditions are met:
9
+ *    * Redistributions of source code must retain the above copyright
10
+ *      notice, this list of conditions and the following disclaimer.
11
+ *    * Redistributions in binary form must reproduce the above copyright
12
+ *      notice, this list of conditions and the following disclaimer in the
13
+ *      documentation and/or other materials provided with the distribution.
14
+ *    * Neither the name of the <organization> nor the
15
+ *      names of its contributors may be used to endorse or promote products
16
+ *      derived from this software without specific prior written permission.
17
+ *
18
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
19
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21
+ * DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
22
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
24
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
25
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
27
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
+ */
29
+
30
+#ifndef _GFXCONF_H
31
+#define _GFXCONF_H
32
+
33
+/* The operating system to use. One of these must be defined - preferably in your Makefile */
34
+//#define GFX_USE_OS_CHIBIOS	FALSE
35
+//#define GFX_USE_OS_WIN32		FALSE
36
+//#define GFX_USE_OS_LINUX		FALSE
37
+//#define GFX_USE_OS_OSX		FALSE
38
+
39
+#define GFX_USE_GTRANS                          TRUE
40
+#define GFX_USE_GDISP			                TRUE
41
+
42
+#define GDISP_NEED_VALIDATION	                TRUE
43
+#define GDISP_NEED_CLIP			                TRUE
44
+#define GDISP_NEED_TEXT			                TRUE
45
+#define GDISP_NEED_ANTIALIAS                    TRUE
46
+#define GDISP_NEED_UTF8                         TRUE
47
+#define GDISP_NEED_TEXT_KERNING                 TRUE
48
+
49
+#define GDISP_INCLUDE_USER_FONTS				TRUE
50
+
51
+#endif /* _GFXCONF_H */

+ 112 - 0
demos/modules/gtrans/basic/main.c

@@ -0,0 +1,112 @@
1
+/*
2
+ * Copyright (c) 2012, 2013, Joel Bodenmann aka Tectu <joel@unormal.org>
3
+ * Copyright (c) 2012, 2013, Andrew Hannam aka inmarket
4
+ *
5
+ * All rights reserved.
6
+ *
7
+ * Redistribution and use in source and binary forms, with or without
8
+ * modification, are permitted provided that the following conditions are met:
9
+ *    * Redistributions of source code must retain the above copyright
10
+ *      notice, this list of conditions and the following disclaimer.
11
+ *    * Redistributions in binary form must reproduce the above copyright
12
+ *      notice, this list of conditions and the following disclaimer in the
13
+ *      documentation and/or other materials provided with the distribution.
14
+ *    * Neither the name of the <organization> nor the
15
+ *      names of its contributors may be used to endorse or promote products
16
+ *      derived from this software without specific prior written permission.
17
+ *
18
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
19
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20
+ * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21
+ * DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
22
+ * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23
+ * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
24
+ * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
25
+ * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
27
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
+ */
29
+
30
+#include <stdio.h>
31
+#include "gfx.h"
32
+
33
+#define COLOR_BACKGROUND    Silver
34
+#define COLOR_TEXT          Black
35
+
36
+font_t font;
37
+
38
+// English Translation
39
+static const char* EnglishStrings[] = {
40
+    "Welcome",
41
+    "The temperature is %d degrees",
42
+    "Goodbye",
43
+    "This is a translated uGFX application"
44
+};
45
+static const transTable EnglishTranslation = { sizeof(EnglishStrings)/sizeof(EnglishStrings[0]), EnglishStrings };
46
+
47
+// German translation
48
+static const char* GermanStrings[] = {
49
+    "Herzlich Willkommen",
50
+    "Die Temperatur beträgt %d Grad",
51
+    "Auf Wiedersehen",
52
+    "Das ist eine übersetzte uGFX Anwendung"
53
+};
54
+static const transTable GermanTranslation = { sizeof(GermanStrings)/sizeof(GermanStrings[0]), GermanStrings };
55
+
56
+// French translation
57
+static const char* FrenchStrings[] = {
58
+    "Bienvenue",
59
+    "La température est de %d degrés",
60
+    "Au revoir",
61
+    "Ceci est une application traduit uGFX"
62
+};
63
+static const transTable FrenchTranslation = { sizeof(FrenchStrings)/sizeof(FrenchStrings[0]), FrenchStrings };
64
+
65
+void updateText()
66
+{
67
+    coord_t width = 400;
68
+    coord_t height = 30;
69
+
70
+    // Translate some basic strings
71
+    gdispFillStringBox(20,  20, width, height, gt("Welcome"), font, COLOR_TEXT, COLOR_BACKGROUND, justifyLeft);
72
+    gdispFillStringBox(20,  60, width, height, gt("This is a translated uGFX application"), font, COLOR_TEXT, COLOR_BACKGROUND, justifyLeft);
73
+    gdispFillStringBox(20, 100, width, height, gt("Goodbye"), font, COLOR_TEXT, COLOR_BACKGROUND, justifyLeft);
74
+
75
+    // A more complex example using string formatting
76
+    char buffer[128];
77
+    sprintf(buffer, gt("The temperature is %d degrees"), 18);
78
+    gdispFillStringBox(20, 140, width, height, buffer, font, COLOR_TEXT, COLOR_BACKGROUND, justifyLeft);
79
+}
80
+
81
+int main(void)
82
+{
83
+    // Initialize the uGFX library
84
+    gfxInit();
85
+    gdispClear(COLOR_BACKGROUND);
86
+
87
+    // Take the first font we find
88
+    font = gdispOpenFont("*");
89
+
90
+    // Set the base language of the application
91
+    gtransSetBaseLanguage(&EnglishTranslation);
92
+
93
+    // Loop through the languages
94
+    while (TRUE) {
95
+        // English
96
+        gtransSetLanguage(&EnglishTranslation);
97
+        updateText();
98
+        gfxSleepMilliseconds(1000);
99
+
100
+        // German
101
+        gtransSetLanguage(&GermanTranslation);
102
+        updateText();
103
+        gfxSleepMilliseconds(1000);
104
+
105
+        // French
106
+        gtransSetLanguage(&FrenchTranslation);
107
+        updateText();
108
+        gfxSleepMilliseconds(1000);
109
+    }
110
+
111
+    return 0;
112
+}

+ 734 - 0
demos/modules/gtrans/basic/userfonts.h

@@ -0,0 +1,734 @@
1
+
2
+
3
+/* Start of automatically generated font definition for phpRVS9jE. */
4
+
5
+#ifndef MF_RLEFONT_INTERNALS
6
+#define MF_RLEFONT_INTERNALS
7
+#endif
8
+#include "mf_rlefont.h"
9
+
10
+#ifndef MF_RLEFONT_VERSION_4_SUPPORTED
11
+#error The font file is not compatible with this version of mcufont.
12
+#endif
13
+
14
+static const uint8_t mf_rlefont_phpRVS9jE_dictionary_data[1423] = {
15
+    0x05, 0xc2, 0xce, 0x29, 0x0a, 0x15, 0x0d, 0x07, 0x86, 0x13, 0x85, 0x80, 0x16, 0x80, 0x16, 0x80, 
16
+    0x08, 0x33, 0xcd, 0xde, 0x80, 0x06, 0x80, 0x0f, 0x80, 0x06, 0x80, 0x01, 0x0f, 0xc3, 0xcb, 0x0e, 
17
+    0x01, 0x80, 0x01, 0x80, 0x13, 0x82, 0x0c, 0x03, 0xc1, 0x40, 0x0b, 0xcd, 0xc2, 0x04, 0x89, 0x16, 
18
+    0x14, 0x13, 0x06, 0x04, 0x35, 0x02, 0xce, 0xc2, 0x15, 0xca, 0xcc, 0x16, 0xcb, 0xc9, 0x25, 0x09, 
19
+    0x03, 0xcc, 0xca, 0x14, 0xc9, 0xcb, 0x80, 0x06, 0x12, 0xce, 0xc9, 0xce, 0xc1, 0x01, 0x11, 0x80, 
20
+    0x16, 0x80, 0x16, 0x80, 0x16, 0x80, 0x16, 0x80, 0x16, 0x80, 0x05, 0x28, 0x80, 0x0d, 0x80, 0x08, 
21
+    0x80, 0x0d, 0x80, 0x08, 0x80, 0x08, 0xce, 0xcc, 0x80, 0xc1, 0xc3, 0xcc, 0x10, 0xcb, 0xc5, 0xc4, 
22
+    0xcc, 0x80, 0xce, 0xc5, 0xcc, 0xc7, 0xc8, 0x02, 0x80, 0x02, 0x40, 0x09, 0xcb, 0x80, 0x80, 0x16, 
23
+    0x80, 0x0e, 0xcb, 0xc3, 0xcd, 0xc4, 0xc6, 0xcc, 0x40, 0x0a, 0xc6, 0x01, 0xca, 0xc3, 0xc4, 0xc1, 
24
+    0x16, 0xc6, 0x80, 0xc5, 0xcd, 0x41, 0x0e, 0xc7, 0xc9, 0xcb, 0xc2, 0x01, 0x41, 0x0f, 0xc7, 0xca, 
25
+    0xc6, 0xc9, 0xc8, 0xc7, 0xce, 0xc2, 0xc7, 0xcb, 0xcd, 0xc8, 0x01, 0xc4, 0xcd, 0xc5, 0xce, 0xc3, 
26
+    0x0e, 0x80, 0x16, 0x87, 0xc1, 0x80, 0xcd, 0xc2, 0x40, 0x0c, 0xcd, 0xc3, 0xc1, 0xcd, 0xca, 0xcd, 
27
+    0xcb, 0xc7, 0xca, 0xc4, 0xcc, 0xc3, 0x01, 0x83, 0x01, 0xc3, 0xca, 0xce, 0x80, 0xce, 0x03, 0x80, 
28
+    0x08, 0x80, 0x02, 0xc3, 0x80, 0x41, 0x21, 0xcd, 0xc1, 0x84, 0x44, 0x18, 0x1c, 0xc9, 0xcd, 0x01, 
29
+    0xc1, 0xc9, 0xce, 0xce, 0xc1, 0x15, 0xc1, 0xc4, 0xc2, 0x01, 0xc2, 0xc6, 0xce, 0xc5, 0x0d, 0xc2, 
30
+    0xce, 0xc3, 0x05, 0xc3, 0xce, 0xc2, 0x0c, 0xc9, 0xc7, 0x07, 0xc7, 0xc9, 0x0c, 0xc6, 0xd1, 0x40, 
31
+    0x0d, 0xc1, 0xc5, 0xc6, 0x15, 0xc8, 0xca, 0x01, 0x80, 0x01, 0xce, 0xc7, 0xc5, 0xc1, 0xcd, 0xc6, 
32
+    0x0b, 0xc8, 0xc5, 0xc3, 0xce, 0xce, 0xc8, 0x01, 0xc9, 0x80, 0xc2, 0x80, 0xc1, 0xc3, 0xc4, 0xca, 
33
+    0xc2, 0xc8, 0x80, 0x08, 0x40, 0x38, 0x80, 0x05, 0x1f, 0x08, 0x81, 0xc7, 0x80, 0xc6, 0xc2, 0xc7, 
34
+    0xcc, 0x01, 0xc2, 0xcd, 0xc7, 0x01, 0x0e, 0x80, 0x02, 0xc4, 0xcd, 0xcc, 0xc7, 0x01, 0xcb, 0xc6, 
35
+    0x04, 0xc6, 0xcd, 0xce, 0x80, 0xca, 0x80, 0xc9, 0xc8, 0xc5, 0xcb, 0xc4, 0xcb, 0xce, 0xc4, 0xc5, 
36
+    0xce, 0xca, 0xc8, 0xca, 0xc2, 0xca, 0xcc, 0xcb, 0xce, 0x0c, 0x1c, 0x07, 0x0e, 0x05, 0x30, 0x0d, 
37
+    0x47, 0x31, 0x05, 0x0a, 0x00, 0x4f, 0x3b, 0x0b, 0x04, 0x00, 0x05, 0x0a, 0x3e, 0x44, 0x38, 0x68, 
38
+    0x45, 0x09, 0x06, 0x38, 0x4a, 0x25, 0x6b, 0x00, 0x2c, 0x3d, 0x1d, 0x98, 0x20, 0x07, 0x27, 0x2e, 
39
+    0x9b, 0x0d, 0x1d, 0x05, 0x0a, 0x1e, 0x0b, 0x01, 0x0e, 0x25, 0x09, 0x18, 0x03, 0x0d, 0x25, 0x0f, 
40
+    0x0c, 0x87, 0x7e, 0x9f, 0x27, 0x03, 0x0f, 0x0c, 0x05, 0x25, 0x9b, 0x0d, 0x07, 0x02, 0x00, 0x03, 
41
+    0x0a, 0x45, 0xa4, 0x1c, 0x60, 0x1c, 0x43, 0x1c, 0x60, 0x1c, 0xa4, 0x30, 0x9b, 0x0d, 0x07, 0x02, 
42
+    0x00, 0x03, 0x0a, 0x45, 0x9b, 0x0a, 0xa2, 0x0c, 0x05, 0x45, 0x49, 0x0e, 0x42, 0x04, 0x45, 0x8b, 
43
+    0x87, 0x82, 0x65, 0x25, 0x0a, 0x06, 0x33, 0x06, 0x0a, 0x25, 0x2e, 0x02, 0x0d, 0x25, 0x3a, 0x0f, 
44
+    0x25, 0x2e, 0x02, 0x0d, 0x25, 0x0a, 0x06, 0x33, 0x06, 0x0a, 0x25, 0x8b, 0x87, 0x82, 0x0b, 0x04, 
45
+    0x45, 0xa9, 0x02, 0x7b, 0xa6, 0x45, 0x7d, 0x0c, 0x09, 0x02, 0x31, 0x9b, 0x0a, 0x0e, 0x0d, 0x09, 
46
+    0x05, 0x30, 0x03, 0x51, 0x09, 0x3b, 0x2c, 0x0e, 0x45, 0x01, 0x0c, 0x08, 0x30, 0x09, 0x0a, 0x22, 
47
+    0x08, 0x36, 0x33, 0x7c, 0x62, 0x3b, 0x88, 0x01, 0x02, 0xa9, 0x1c, 0x6b, 0x3e, 0x07, 0x0d, 0x0e, 
48
+    0x2a, 0x45, 0x08, 0x4f, 0x01, 0x4b, 0x27, 0x68, 0x38, 0x8e, 0x45, 0x3d, 0x35, 0x08, 0x0f, 0x45, 
49
+    0x0a, 0x0a, 0x01, 0x01, 0x07, 0xa3, 0x1d, 0x2c, 0x0a, 0x0e, 0x0e, 0x3f, 0x3e, 0x21, 0x71, 0x6e, 
50
+    0x25, 0xa1, 0x87, 0x8f, 0xa3, 0x27, 0x03, 0x76, 0x18, 0x07, 0x27, 0x09, 0x83, 0x68, 0x1c, 0x4e, 
51
+    0x96, 0x68, 0x1c, 0x09, 0x83, 0x03, 0x76, 0x18, 0x07, 0x25, 0xa1, 0x87, 0x8f, 0xa3, 0x45, 0x71, 
52
+    0x6e, 0x92, 0x41, 0x35, 0x72, 0x41, 0x35, 0x72, 0x0f, 0x1b, 0x72, 0x0f, 0x1d, 0x60, 0x32, 0x19, 
53
+    0x1d, 0x0a, 0x07, 0x32, 0x5d, 0x2b, 0x9b, 0x62, 0x02, 0x35, 0x91, 0x68, 0x1d, 0x9b, 0x7a, 0x97, 
54
+    0x0d, 0x09, 0x02, 0x3b, 0x34, 0x03, 0x0d, 0x27, 0xa5, 0x18, 0x09, 0x07, 0x25, 0x6a, 0x2c, 0x3d, 
55
+    0x27, 0x5a, 0x38, 0x5d, 0x1d, 0x2c, 0x3d, 0x00, 0x6a, 0x3e, 0x09, 0x07, 0x00, 0x49, 0x3b, 0x03, 
56
+    0x0d, 0x00, 0x46, 0x31, 0x0b, 0x08, 0x0e, 0x30, 0x05, 0x0f, 0x08, 0x30, 0x67, 0x02, 0x45, 0x2c, 
57
+    0x08, 0x09, 0x31, 0x0f, 0x1d, 0x0f, 0x38, 0x0c, 0x04, 0x72, 0x18, 0x0f, 0x38, 0x03, 0x76, 0x4b, 
58
+    0x89, 0x0f, 0x33, 0x08, 0x08, 0x4b, 0x89, 0x94, 0x6f, 0x0f, 0x1d, 0x94, 0x44, 0x28, 0x2b, 0x3a, 
59
+    0x08, 0x54, 0x25, 0x05, 0x86, 0x7f, 0x6a, 0x1e, 0x03, 0x0d, 0x2b, 0x94, 0x2c, 0x0e, 0x2b, 0x94, 
60
+    0x2c, 0x0e, 0x2b, 0x6a, 0x1e, 0x03, 0x0d, 0x2b, 0x09, 0x07, 0x1e, 0x5a, 0x89, 0x9b, 0x65, 0x18, 
61
+    0x03, 0x60, 0x1d, 0xa8, 0x99, 0x9b, 0x06, 0x0e, 0x05, 0x25, 0x71, 0x54, 0x0e, 0x6e, 0x45, 0x9a, 
62
+    0x03, 0x8f, 0xa3, 0x45, 0x2e, 0x08, 0x45, 0x7d, 0x6d, 0x30, 0x9b, 0x0d, 0x0c, 0x8a, 0x02, 0x3b, 
63
+    0x63, 0x08, 0x0a, 0x0e, 0x0b, 0x70, 0x30, 0x06, 0x0b, 0x30, 0x49, 0x01, 0x31, 0x47, 0x01, 0x3b, 
64
+    0x63, 0x68, 0x31, 0x03, 0x68, 0x3b, 0x9b, 0x6a, 0x3b, 0x9b, 0x50, 0x45, 0x2c, 0x64, 0x45, 0x2c, 
65
+    0x0c, 0x06, 0x30, 0x6d, 0x1c, 0x77, 0x77, 0x80, 0x06, 0xa3, 0x25, 0x0a, 0x07, 0x33, 0x98, 0x25, 
66
+    0x60, 0x33, 0x8e, 0x25, 0x94, 0x67, 0x25, 0x60, 0x33, 0x8e, 0x25, 0x0a, 0x07, 0x33, 0x07, 0x92, 
67
+    0x3a, 0x0f, 0x25, 0x3d, 0x38, 0x8e, 0x25, 0x0c, 0x04, 0x33, 0x08, 0x0f, 0x25, 0x58, 0x55, 0x91, 
68
+    0x8d, 0x45, 0xa1, 0x0f, 0x9c, 0x85, 0x22, 0x0e, 0x3c, 0x67, 0x27, 0x9b, 0x86, 0x01, 0x01, 0x07, 
69
+    0xa3, 0x25, 0x0a, 0x07, 0x33, 0x08, 0x0f, 0x25, 0x60, 0x33, 0x8e, 0x25, 0x94, 0x67, 0x25, 0x60, 
70
+    0x33, 0x8e, 0x25, 0x0a, 0x07, 0x33, 0x98, 0x25, 0x19, 0x80, 0x06, 0xa3, 0x45, 0x03, 0x0f, 0x88, 
71
+    0x3e, 0x19, 0x05, 0x8f, 0x50, 0x45, 0x0a, 0x07, 0x38, 0xa5, 0x45, 0x68, 0x38, 0x6b, 0x45, 0x0f, 
72
+    0x20, 0x45, 0x7d, 0x0a, 0x83, 0x8b, 0x80, 0xa6, 0x3e, 0x03, 0xac, 0x0e, 0x0b, 0x04, 0x95, 0x0e, 
73
+    0x4f, 0x45, 0x0f, 0x0a, 0x07, 0x01, 0x01, 0x07, 0x60, 0x25, 0x0f, 0x07, 0x33, 0x5d, 0x25, 0x0f, 
74
+    0x02, 0x33, 0x19, 0x00, 0x0c, 0x0f, 0x2b, 0x9b, 0x68, 0x32, 0x08, 0x1d, 0x09, 0x83, 0x68, 0x1c, 
75
+    0x0f, 0x56, 0x94, 0x70, 0x2b, 0x2e, 0x72, 0x18, 0x09, 0x07, 0x1e, 0x0f, 0x2b, 0x9b, 0x60, 0x38, 
76
+    0x72, 0x33, 0x5d, 0x25, 0x0f, 0x0a, 0x80, 0x06, 0x60, 0x25, 0x43, 0x7c, 0x94, 0x67, 0x25, 0x94, 
77
+    0x9e, 0x25, 0x0f, 0x38, 0x82, 0x88, 0x85, 0x07, 0x0d, 0x0f, 0x88, 0x45, 0x0f, 0xa4, 0x02, 0x7e, 
78
+    0x64, 0x25, 0x0f, 0x08, 0x33, 0x47, 0x25, 0x0f, 0x02, 0x00, 0x2c, 0x0e, 0x25, 0x24, 0x27, 0x3a, 
79
+    0x0f, 0x25, 0x24, 0x96, 0x94, 0x73, 0x9d, 0x97, 0x20, 0x25, 0x21, 0x66, 0x25, 0x0f, 0x56, 0x21, 
80
+    0x5f, 0x1c, 0x19, 0x30, 0xa2, 0x46, 0x02, 0x7b, 0x08, 0x0b, 0x45, 0x90, 0xa2, 0x62, 0x01, 0x00, 
81
+    0x08, 0x0c, 0x01, 0x1c, 0x0a, 0x06, 0x45, 0x2c, 0x0e, 0x06, 0x3d, 0x3e, 0x0a, 0x07, 0x00, 0x64, 
82
+    0x00, 0x58, 0x3b, 0x9e, 0x0f, 0x0d, 0x73, 0x94, 0x9d, 0x92, 0x95, 0x38, 0x67, 0x25, 0x0f, 0x02, 
83
+    0x33, 0x19, 0x25, 0x0f, 0x07, 0x5b, 0x38, 0x6d, 0x2b, 0xa9, 0x01, 0x84, 0x35, 0x49, 0x1d, 0x3d, 
84
+    0x01, 0x0e, 0x00, 0x7b, 0x50, 0x1d, 0x3d, 0x01, 0x0e, 0x35, 0x08, 0x09, 0x27, 0xa9, 0x01, 0x84, 
85
+    0x8b, 0x01, 0x1d, 0x9b, 0xac, 0x5b, 0x0c, 0x06, 0x30, 0x31, 0x34, 0x1f, 0x35, 0x9a, 0x30, 0x05, 
86
+    0x68, 0x3b, 0x63, 0x60, 0x31, 0x03, 0x65, 0x3b, 0x9b, 0xa7, 0x3b, 0x9b, 0x6c, 0x0a, 0x31, 0x09, 
87
+    0x0a, 0x00, 0xa9, 0x1e, 0x95, 0x65, 0x45, 0x49, 0x0e, 0x42, 0x05, 0x0f, 0x2a, 0x42, 0x06, 0x45, 
88
+    0x0f, 0x3d, 0x32, 0x37, 0x4b, 0x0f, 0x40, 0x0a, 0x07, 0x18, 0x06, 0x0a, 0x4c, 0x97, 0x3a, 0x84, 
89
+    0x1d, 0x94, 0x8b, 0x01, 0x27, 0x94, 0x0c, 0x0f, 0x06, 0x0b, 0x32, 0x0f, 0x2b, 0x28, 0xa0, 0x4c, 
90
+    0x4b, 0x92, 0x34, 0x9b, 0x8c, 0x31, 0x39, 0x3b, 0x57, 0x06, 0x1a, 0x35, 0x9b, 0x68, 0x25, 0x06, 
91
+    0x0b, 0x38, 0xa0, 0x1d, 0x0c, 0x53, 0x06, 0x0b, 0x3e, 0x9b, 0x65, 0x60, 0x31, 0x98, 0x07, 0x1c, 
92
+    0x3f, 0x37, 0x81, 0x24, 0x27, 0x04, 0xac, 0x0e, 0x0b, 0x99, 0x01, 0x47, 0x1d, 0x0d, 0x87, 0x02, 
93
+    0x06, 0xac, 0x0e, 0x0f, 0x9b, 0x76, 0x33, 0x0f, 0x89, 0x4b, 0x5d, 0x27, 0x9b, 0x60, 0x35, 0x09, 
94
+    0x74, 0x25, 0x6d, 0x35, 0x03, 0x09, 0x28, 0x1d, 0x51, 0x38, 0x0b, 0x01, 0x28, 0x86, 0x02, 0x7b, 
95
+    0x02, 0x98, 0x25, 0x03, 0x6c, 0x09, 0x09, 0x00, 0xa9, 0x31, 0x6c, 0x0a, 0x04, 0x27, 0x58, 0x99, 
96
+    0x00, 0x3f, 0x3e, 0x3f, 0x37, 0x97, 0x1c, 0x97, 0x03, 0x0d, 0x31, 0x02, 0xac, 0x9d, 0x35, 0x61, 
97
+    0x35, 0x9d, 0x9b, 0x60, 0x45, 0x0f, 0x38, 0xab, 0x02, 0x25, 0x9a, 0x0e, 0x42, 0x07, 0x0a, 0x07, 
98
+    0x00, 0x5d, 0x3b, 0x19, 0x06, 0x3d, 0x07, 0x0e, 0x08, 0x19, 0x3b, 0x60, 0x7c, 0x0e, 0x7b, 0x0e, 
99
+    0x3b, 0x5e, 0x00, 0x5e, 0x00, 0x47, 0x77, 0x77, 0x1b, 0x72, 0x41, 0x35, 0x72, 0x41, 0x07, 0x0e, 
100
+    0x08, 0x19, 0x3b, 0x0e, 0x91, 0x86, 0x40, 0x05, 0x2b, 0x0c, 0x04, 0x1e, 0x47, 0x95, 0x02, 0x0c, 
101
+    0x19, 0x80, 0x06, 0xa3, 0x45, 0x03, 0xac, 0x3c, 0x67, 0x1c, 0x47, 0x45, 0x6e, 0x09, 0x67, 0x68, 
102
+    0x38, 0x64, 0x30, 0x9f, 0x30, 0x1f, 0x21, 0x9d, 0x35, 0x04, 0x18, 0x00, 0x81, 0x3b, 0x2c, 0x0e, 
103
+    0x3e, 0x00, 0x5a, 0x1d, 0x0b, 0x04, 0x1b, 0x2c, 0x96, 0x28, 0x29, 0x21, 0x27, 0x5d, 0x89, 
104
+};
105
+
106
+static const uint16_t mf_rlefont_phpRVS9jE_dictionary_offsets[233] = {
107
+    0x0000, 0x0001, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007, 0x0008, 
108
+    0x000a, 0x000b, 0x0011, 0x0012, 0x0014, 0x001c, 0x001d, 0x001f, 
109
+    0x0020, 0x0023, 0x0025, 0x0026, 0x0027, 0x0029, 0x002b, 0x002e, 
110
+    0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x003f, 
111
+    0x0040, 0x0041, 0x0046, 0x0048, 0x0049, 0x004b, 0x004e, 0x004f, 
112
+    0x005b, 0x005c, 0x0066, 0x0068, 0x006a, 0x006c, 0x006d, 0x006f, 
113
+    0x0071, 0x0073, 0x0075, 0x0077, 0x007a, 0x007c, 0x007e, 0x0082, 
114
+    0x0084, 0x0086, 0x0088, 0x008a, 0x008c, 0x008e, 0x0090, 0x0091, 
115
+    0x0093, 0x0095, 0x0097, 0x0099, 0x009c, 0x009e, 0x00a0, 0x00a2, 
116
+    0x00a4, 0x00a6, 0x00a8, 0x00aa, 0x00ac, 0x00ae, 0x00b0, 0x00b4, 
117
+    0x00b6, 0x00b8, 0x00ba, 0x00bc, 0x00be, 0x00c0, 0x00c2, 0x00c4, 
118
+    0x00c7, 0x00c9, 0x00ce, 0x00d1, 0x00d3, 0x00d5, 0x00d7, 0x00d9, 
119
+    0x00da, 0x00dc, 0x00dd, 0x00df, 0x00e1, 0x00e3, 0x00e6, 0x00e8, 
120
+    0x00fd, 0x00ff, 0x0101, 0x0103, 0x0105, 0x0108, 0x010a, 0x010c, 
121
+    0x010e, 0x0110, 0x0111, 0x0113, 0x0115, 0x0118, 0x011a, 0x011c, 
122
+    0x011e, 0x0120, 0x0122, 0x0124, 0x0126, 0x0128, 0x0129, 0x012a, 
123
+    0x012b, 0x012d, 0x012f, 0x0131, 0x0133, 0x0136, 0x0139, 0x013b, 
124
+    0x013e, 0x0141, 0x0143, 0x0145, 0x0147, 0x0149, 0x014b, 0x014d, 
125
+    0x014f, 0x0151, 0x0153, 0x0155, 0x0157, 0x0159, 0x0187, 0x0196, 
126
+    0x01ba, 0x01de, 0x01f9, 0x01ff, 0x0203, 0x022b, 0x022e, 0x0251, 
127
+    0x0275, 0x02a3, 0x02c1, 0x02ec, 0x0305, 0x0327, 0x0340, 0x0357, 
128
+    0x037e, 0x039f, 0x03b4, 0x03d1, 0x03dc, 0x03e6, 0x0403, 0x0407, 
129
+    0x0410, 0x0415, 0x0420, 0x0425, 0x042f, 0x0436, 0x043b, 0x0445, 
130
+    0x0469, 0x046b, 0x047c, 0x0485, 0x048b, 0x0491, 0x0493, 0x0497, 
131
+    0x049c, 0x04a7, 0x04af, 0x04b2, 0x04b7, 0x04bb, 0x04d3, 0x04d5, 
132
+    0x04e3, 0x04eb, 0x04fd, 0x0505, 0x050c, 0x0511, 0x0515, 0x0518, 
133
+    0x051b, 0x051d, 0x0527, 0x052e, 0x0536, 0x053d, 0x0544, 0x0546, 
134
+    0x054e, 0x0557, 0x055e, 0x0560, 0x056d, 0x056f, 0x0571, 0x0576, 
135
+    0x0579, 0x057b, 0x057d, 0x0581, 0x0584, 0x0589, 0x058b, 0x058d, 
136
+    0x058f, 
137
+};
138
+
139
+static const uint8_t mf_rlefont_phpRVS9jE_glyph_data_0[2382] = {
140
+    0x05, 0x00, 0x10, 0x06, 0x52, 0xfe, 0xfe, 0x0e, 0x56, 0x0d, 0x25, 0x34, 0x4e, 0x10, 0x06, 0x4c, 
141
+    0x73, 0x94, 0x9d, 0x29, 0xcd, 0x10, 0x0d, 0x56, 0xf9, 0x09, 0x0a, 0x00, 0x67, 0x03, 0x3e, 0x0d, 
142
+    0x53, 0xa8, 0x3e, 0x8e, 0x02, 0x00, 0x09, 0x0a, 0x27, 0x8e, 0x2a, 0x20, 0x25, 0x0a, 0x09, 0x00, 
143
+    0x8e, 0x02, 0x3e, 0x0e, 0x05, 0x00, 0xa8, 0x3e, 0x8e, 0x02, 0x00, 0x08, 0x0b, 0x25, 0x2a, 0x20, 
144
+    0x43, 0x27, 0x0a, 0x09, 0x00, 0x8e, 0x02, 0x3e, 0x0e, 0x05, 0x00, 0xa1, 0x3e, 0x03, 0x43, 0x00, 
145
+    0x0a, 0x09, 0x10, 0x0a, 0x81, 0x4e, 0x35, 0x2c, 0x7a, 0x48, 0x6e, 0x45, 0x0a, 0xaa, 0x43, 0xa5, 
146
+    0x45, 0x3d, 0x29, 0x6a, 0x00, 0x29, 0xa8, 0x08, 0x0f, 0x02, 0x3b, 0x9b, 0x98, 0x0d, 0x6f, 0x3e, 
147
+    0x28, 0x51, 0x31, 0x0f, 0x7b, 0x0e, 0x45, 0x0b, 0x04, 0x67, 0x02, 0x09, 0x0a, 0x45, 0x90, 0xa2, 
148
+    0x0d, 0x09, 0x01, 0x31, 0x4e, 0x10, 0x0f, 0x4c, 0xe8, 0xcf, 0x51, 0x00, 0xe8, 0x5b, 0x1b, 0x2c, 
149
+    0x65, 0x00, 0xa9, 0x01, 0x84, 0x1d, 0xa4, 0x35, 0x3d, 0x01, 0x0e, 0x1d, 0x03, 0x76, 0x35, 0x3d, 
150
+    0x01, 0x0e, 0x1d, 0x0c, 0x05, 0x38, 0xa9, 0x01, 0x84, 0x89, 0x61, 0x33, 0xe8, 0x5b, 0x10, 0x0c, 
151
+    0x2d, 0x08, 0x0d, 0x0f, 0x0c, 0x05, 0x3e, 0x09, 0xaa, 0x01, 0xa6, 0x3e, 0x7d, 0x6a, 0x1c, 0x9a, 
152
+    0x01, 0x30, 0xa9, 0x0b, 0x01, 0x3b, 0x08, 0x08, 0x00, 0x44, 0x02, 0x00, 0x7b, 0x0e, 0x1d, 0x68, 
153
+    0x35, 0x03, 0x50, 0x9b, 0x0d, 0x1d, 0x43, 0x38, 0x8b, 0x05, 0x5d, 0x1d, 0x0c, 0x05, 0x33, 0x8b, 
154
+    0x60, 0x2b, 0x63, 0x0e, 0x06, 0x01, 0x35, 0x49, 0x0f, 0x07, 0x27, 0x03, 0xac, 0x0e, 0x0d, 0x0a, 
155
+    0x05, 0x02, 0x9c, 0x10, 0x03, 0x4c, 0xf7, 0x10, 0x06, 0x52, 0x8e, 0x09, 0x30, 0x09, 0x76, 0x31, 
156
+    0x67, 0x04, 0x30, 0x61, 0x1c, 0x0a, 0x83, 0x68, 0x1c, 0x7d, 0x7d, 0x68, 0x1c, 0x0a, 0x83, 0x06, 
157
+    0x0b, 0x1c, 0x67, 0x04, 0x1c, 0x09, 0x0c, 0x01, 0x30, 0x8e, 0x09, 0x10, 0x06, 0x4c, 0x8d, 0x02, 
158
+    0x30, 0x6b, 0x09, 0x30, 0x63, 0x43, 0x1c, 0x0c, 0x83, 0x06, 0x0a, 0x30, 0x9b, 0x0d, 0xfa, 0x00, 
159
+    0x2c, 0x0e, 0x30, 0x9b, 0x0d, 0x1c, 0x06, 0x0a, 0x1c, 0x0c, 0x06, 0x31, 0x63, 0x43, 0x31, 0x6b, 
160
+    0x09, 0x30, 0x8d, 0x02, 0x10, 0x08, 0x69, 0x4e, 0x18, 0x0a, 0x06, 0x28, 0x06, 0x0a, 0x3e, 0x06, 
161
+    0x4d, 0xa0, 0x27, 0x06, 0x4d, 0xa0, 0x1d, 0x0a, 0x06, 0x28, 0x06, 0x0a, 0x31, 0x4e, 0x10, 0x0d, 
162
+    0x33, 0x5c, 0xf7, 0x27, 0x2a, 0x20, 0x3b, 0xf7, 0x10, 0x05, 0x5c, 0x75, 0x0f, 0xfa, 0x33, 0x5e, 
163
+    0x1c, 0x6f, 0x10, 0x06, 0x4c, 0x75, 0x70, 0x10, 0x05, 0x5c, 0x75, 0x4e, 0x10, 0x05, 0x2d, 0xe7, 
164
+    0x35, 0x4a, 0x1c, 0x0c, 0x04, 0x30, 0x19, 0x1c, 0x5e, 0x1c, 0x46, 0x3e, 0x2c, 0x3d, 0x31, 0xa5, 
165
+    0x1c, 0x09, 0x83, 0x60, 0x31, 0xee, 0x1c, 0x08, 0x08, 0x1c, 0x6a, 0x10, 0x0a, 0x4c, 0x9b, 0x0a, 
166
+    0x0e, 0x0e, 0xaa, 0x45, 0x6b, 0x07, 0x01, 0x01, 0x07, 0x76, 0x25, 0x5d, 0x33, 0x0a, 0x06, 0x25, 
167
+    0x0b, 0x04, 0x33, 0xa6, 0x25, 0x3d, 0x2c, 0x0e, 0x25, 0xde, 0x3d, 0x2c, 0x0e, 0x25, 0x0b, 0x04, 
168
+    0x33, 0xa6, 0x25, 0x5d, 0x33, 0x0a, 0x07, 0x25, 0x6b, 0x07, 0x01, 0x01, 0x07, 0x76, 0x25, 0x9b, 
169
+    0x0a, 0x0e, 0x0e, 0xaa, 0x10, 0x0a, 0x52, 0x03, 0x7c, 0x29, 0x62, 0x02, 0xb5, 0x27, 0x29, 0x1f, 
170
+    0x10, 0x0a, 0x4c, 0x90, 0x0e, 0x42, 0x05, 0x3e, 0x0f, 0x4f, 0x01, 0x44, 0x06, 0x45, 0x08, 0x33, 
171
+    0xe7, 0x35, 0x67, 0x1c, 0x49, 0x3e, 0x2c, 0x50, 0x45, 0x2c, 0x0b, 0x04, 0x31, 0xf2, 0x04, 0x31, 
172
+    0xf2, 0x04, 0x45, 0x2c, 0x0c, 0x04, 0x30, 0x0c, 0x05, 0x1c, 0x20, 0x43, 0x10, 0x0a, 0x4c, 0x03, 
173
+    0x7a, 0x48, 0x46, 0x45, 0x0c, 0x99, 0x7b, 0x47, 0x08, 0x1c, 0x19, 0x1c, 0x19, 0x45, 0x2c, 0x47, 
174
+    0x08, 0x3e, 0x0f, 0x2a, 0x0b, 0x30, 0x82, 0x9c, 0x30, 0x9e, 0x1c, 0x67, 0x30, 0xee, 0x25, 0x0b, 
175
+    0x87, 0x9b, 0x06, 0x50, 0x25, 0x90, 0x0e, 0x48, 0x54, 0x10, 0x0a, 0x81, 0x6b, 0x0f, 0x30, 0x46, 
176
+    0x29, 0x5d, 0x28, 0x3e, 0x03, 0x76, 0x28, 0x1d, 0x2c, 0x6f, 0x28, 0x45, 0x09, 0x07, 0x72, 0x96, 
177
+    0xa5, 0x33, 0x0f, 0x45, 0x2e, 0x0f, 0x45, 0x2a, 0x20, 0x30, 0x21, 0x10, 0x0a, 0x52, 0x20, 0x3e, 
178
+    0xfe, 0x48, 0x48, 0xaa, 0x3e, 0x6e, 0x9b, 0x07, 0x65, 0x1c, 0x06, 0x0b, 0xfa, 0x00, 0x2c, 0x0e, 
179
+    0x1c, 0x06, 0x0b, 0x25, 0x0b, 0x87, 0x9b, 0x07, 0x65, 0x25, 0x90, 0xa2, 0x0d, 0xaa, 0x10, 0x0a, 
180
+    0x2d, 0xa1, 0x0f, 0x0c, 0x05, 0x3e, 0x09, 0x09, 0x02, 0x00, 0x26, 0x45, 0xa6, 0x1c, 0x6e, 0x1c, 
181
+    0x64, 0xac, 0x0e, 0x4f, 0x45, 0x48, 0x80, 0x06, 0xa7, 0x25, 0x0f, 0x06, 0x33, 0x06, 0x0b, 0x25, 
182
+    0x3d, 0x2c, 0x0e, 0x25, 0x0b, 0x01, 0x00, 0x2c, 0x0e, 0x25, 0x06, 0x06, 0x33, 0x06, 0x0b, 0x45, 
183
+    0x0c, 0x80, 0x06, 0xa7, 0x1d, 0x2c, 0x0a, 0xa2, 0x0c, 0x04, 0x10, 0x0a, 0x4c, 0x97, 0x20, 0x1c, 
184
+    0x5d, 0x1c, 0x6a, 0x30, 0x49, 0x1c, 0x46, 0x30, 0xe7, 0x35, 0x09, 0x07, 0x3e, 0x2c, 0x3d, 0x31, 
185
+    0x5a, 0x1c, 0x6a, 0x30, 0xa5, 0x1c, 0x0c, 0x04, 0x10, 0x0a, 0x52, 0x51, 0x0e, 0x42, 0x06, 0x45, 
186
+    0x09, 0x0c, 0x55, 0x01, 0x47, 0x09, 0x25, 0x60, 0x33, 0x19, 0x25, 0x60, 0x33, 0x19, 0x25, 0x9a, 
187
+    0x55, 0x7e, 0x9f, 0x25, 0xa3, 0x2a, 0x0a, 0x45, 0x07, 0x0d, 0x87, 0x82, 0x9c, 0x27, 0x50, 0x33, 
188
+    0x9e, 0x25, 0x43, 0x33, 0x67, 0x25, 0x50, 0x33, 0x9e, 0x25, 0xa1, 0x87, 0x82, 0x88, 0x45, 0x49, 
189
+    0x0e, 0x42, 0x05, 0x10, 0x0a, 0x4c, 0xee, 0x48, 0x0a, 0x01, 0x25, 0x63, 0x0e, 0x80, 0x51, 0x45, 
190
+    0xa0, 0x06, 0x06, 0x25, 0x3d, 0x2c, 0x0b, 0x25, 0x3d, 0x2c, 0x0e, 0x25, 0xa0, 0x57, 0x27, 0x63, 
191
+    0x0e, 0x80, 0x06, 0xa2, 0x25, 0x63, 0xac, 0x42, 0x58, 0x1c, 0x90, 0x1c, 0x6e, 0x45, 0x4f, 0x9b, 
192
+    0x09, 0x09, 0x3e, 0x58, 0x0f, 0x9c, 0x10, 0x05, 0x18, 0x75, 0x4e, 0x56, 0xf9, 0x4e, 0x10, 0x05, 
193
+    0x18, 0x75, 0x4e, 0x56, 0xf9, 0x0f, 0xfa, 0x33, 0x5e, 0x1c, 0x6f, 0x10, 0x0d, 0x33, 0x5c, 0x2c, 
194
+    0x51, 0x3b, 0x90, 0x0e, 0x6e, 0x25, 0x91, 0x0d, 0x0c, 0x06, 0x01, 0x25, 0x06, 0xac, 0x08, 0x02, 
195
+    0x3b, 0x0f, 0x09, 0x01, 0x30, 0x06, 0xac, 0x08, 0x02, 0x30, 0x91, 0x0d, 0x0c, 0x06, 0x01, 0x30, 
196
+    0x90, 0x0e, 0x6e, 0x3e, 0x2c, 0x51, 0x10, 0x0d, 0x79, 0x75, 0x2a, 0x1f, 0x40, 0x2f, 0x10, 0x0d, 
197
+    0x5c, 0x0c, 0x06, 0x01, 0x30, 0x90, 0x0e, 0x6e, 0x3e, 0x2c, 0x51, 0x62, 0x02, 0x30, 0x91, 0x0e, 
198
+    0xa0, 0x1d, 0x2c, 0x8d, 0x3b, 0x91, 0x0e, 0xa0, 0x96, 0x2c, 0x51, 0x62, 0x02, 0x25, 0x90, 0x0e, 
199
+    0x6e, 0x3b, 0x0c, 0x06, 0x01, 0x10, 0x09, 0x4c, 0x05, 0xac, 0x3c, 0x01, 0x3e, 0x0c, 0x87, 0x01, 
200
+    0x09, 0x0a, 0xfa, 0x33, 0x07, 0x0d, 0x30, 0x98, 0x07, 0x31, 0x57, 0x09, 0x30, 0x62, 0x1c, 0x4e, 
201
+    0x95, 0x4e, 0x10, 0x10, 0x4c, 0x2c, 0x9a, 0xa2, 0x0d, 0x09, 0x03, 0x1d, 0x63, 0x3c, 0x55, 0x9b, 
202
+    0x07, 0x62, 0x2b, 0x05, 0x65, 0x38, 0x2c, 0x0b, 0x09, 0x1e, 0x2c, 0x65, 0xee, 0x48, 0x0b, 0x04, 
203
+    0x43, 0x50, 0x37, 0x08, 0x09, 0x63, 0x0e, 0x80, 0x06, 0x0e, 0x85, 0x06, 0x0a, 0x37, 0x6f, 0xa0, 
204
+    0x57, 0x7b, 0x0e, 0x37, 0x3d, 0x3d, 0x2c, 0x73, 0x0f, 0x37, 0x3d, 0x3d, 0x38, 0x67, 0x9b, 0x0d, 
205
+    0x37, 0x6f, 0xa0, 0x06, 0x85, 0x5e, 0x37, 0x08, 0x09, 0x63, 0x0e, 0x80, 0x06, 0xa2, 0x03, 0x68, 
206
+    0x32, 0x2c, 0x65, 0xee, 0x48, 0x0b, 0x04, 0x0e, 0xaa, 0x89, 0x05, 0x65, 0x30, 0x63, 0x3c, 0x55, 
207
+    0x00, 0x7e, 0x09, 0x0a, 0x89, 0x2c, 0x9a, 0xa2, 0x42, 0x08, 0x03, 0x10, 0x0b, 0x4c, 0x2c, 0xad, 
208
+    0xf1, 0x10, 0x0b, 0x4c, 0x77, 0x42, 0x06, 0x27, 0x28, 0x2c, 0x47, 0x09, 0x27, 0x3a, 0x19, 0x27, 
209
+    0x3a, 0x19, 0x1d, 0x28, 0x2c, 0x47, 0x09, 0x27, 0x0f, 0x20, 0x0c, 0x01, 0x9d, 0x35, 0x7e, 0x62, 
210
+    0x27, 0x3a, 0x03, 0x0d, 0x27, 0x3a, 0x67, 0x27, 0x3a, 0x03, 0x0d, 0x9d, 0x35, 0x7e, 0x9c, 0x1d, 
211
+    0x77, 0x42, 0x05, 0x10, 0x0b, 0x2d, 0xb6, 0x10, 0x0c, 0x4c, 0x2a, 0x48, 0x6d, 0x02, 0x25, 0x0f, 
212
+    0x38, 0x8f, 0x08, 0x0e, 0x05, 0x27, 0x3a, 0x03, 0x65, 0x1d, 0x3a, 0xfb, 0x3a, 0x9b, 0x0d, 0x1d, 
213
+    0x3a, 0x7b, 0x0e, 0x1d, 0x3a, 0x7b, 0x0e, 0x1d, 0x3a, 0x9b, 0x0d, 0x1d, 0x3a, 0xfb, 0x3a, 0x03, 
214
+    0x60, 0x1d, 0x0f, 0x38, 0x8f, 0x08, 0x0e, 0x05, 0x27, 0x2a, 0x48, 0x6d, 0x02, 0x10, 0x0a, 0x4c, 
215
+    0xc7, 0x66, 0x10, 0x09, 0x4c, 0x20, 0x73, 0x9d, 0x30, 0xfe, 0x20, 0x3e, 0x3f, 0x10, 0x0c, 0x52, 
216
+    0x9b, 0x7a, 0x97, 0x0d, 0x09, 0xe4, 0x82, 0xc2, 0x32, 0x06, 0xe2, 0x48, 0x62, 0x03, 0x10, 0x0c, 
217
+    0x4c, 0x92, 0x41, 0x35, 0x72, 0x0f, 0x1b, 0x72, 0x0f, 0x1d, 0xef, 0x10, 0x05, 0x52, 0xe5, 0x10, 
218
+    0x05, 0x52, 0xe5, 0x1e, 0x19, 0x3e, 0x2c, 0x84, 0x31, 0x0f, 0x5b, 0x10, 0x0a, 0x4c, 0x94, 0x03, 
219
+    0x9c, 0x1d, 0x0f, 0x33, 0x8b, 0x05, 0x00, 0x9d, 0x63, 0x6a, 0x35, 0x9d, 0x05, 0x68, 0x45, 0x28, 
220
+    0x9a, 0x01, 0x3b, 0x0f, 0x49, 0x01, 0x31, 0x43, 0x0c, 0x05, 0x31, 0x0f, 0x7b, 0x0c, 0x05, 0x3e, 
221
+    0x28, 0x7b, 0x0c, 0x06, 0x3e, 0x0f, 0x2c, 0x0c, 0x06, 0x25, 0x28, 0x2c, 0x9f, 0x9d, 0x2c, 0x9f, 
222
+    0x10, 0x09, 0x4c, 0x4e, 0x96, 0xb5, 0x27, 0x1f, 0x10, 0x0d, 0x4c, 0x0f, 0x0a, 0x1e, 0xa3, 0x2b, 
223
+    0x0f, 0x68, 0x18, 0xf2, 0x0f, 0x2b, 0x0f, 0x4a, 0x18, 0x09, 0x57, 0x2b, 0x43, 0x3d, 0x35, 0x6b, 
224
+    0x28, 0x1b, 0x28, 0x09, 0x07, 0x38, 0x4a, 0x28, 0x89, 0x0f, 0x9b, 0x0d, 0x38, 0x68, 0x28, 0x37, 
225
+    0x4b, 0x46, 0x00, 0x06, 0x0a, 0x4b, 0x37, 0x28, 0xee, 0x00, 0x0c, 0x04, 0x4b, 0x1b, 0x0f, 0x38, 
226
+    0x62, 0x0c, 0x72, 0x33, 0x0f, 0x38, 0x57, 0x53, 0x4b, 0x1e, 0x72, 0x28, 0x96, 0x72, 0x28, 0x10, 
227
+    0x0c, 0x4c, 0x0f, 0x60, 0x32, 0x0f, 0x1d, 0xd9, 0x28, 0x2b, 0xe0, 0x33, 0xb9, 0x57, 0x1d, 0x94, 
228
+    0x7b, 0x0c, 0x0f, 0x10, 0x0d, 0x2d, 0x71, 0xba, 0x10, 0x0a, 0x4c, 0xd4, 0x38, 0x82, 0x88, 0x25, 
229
+    0x94, 0x9e, 0x25, 0x94, 0x67, 0x25, 0x94, 0x9e, 0x25, 0x0f, 0x2c, 0x58, 0x07, 0x25, 0xd4, 0x56, 
230
+    0xf7, 0x10, 0x0d, 0x2d, 0x71, 0x54, 0x25, 0x05, 0x86, 0x7f, 0x6a, 0x1e, 0x03, 0x0d, 0x2b, 0x94, 
231
+    0x2c, 0x0e, 0x2b, 0x94, 0x2c, 0x0e, 0x2b, 0x6a, 0x1e, 0x03, 0x0d, 0x2b, 0x09, 0x07, 0x1e, 0x5a, 
232
+    0x89, 0x9b, 0x65, 0x18, 0x03, 0xa7, 0x1d, 0xa8, 0x99, 0x9b, 0x06, 0x8c, 0x27, 0x03, 0x6c, 0x2a, 
233
+    0x08, 0x1c, 0x06, 0x76, 0x1c, 0x9a, 0x01, 0x10, 0x0b, 0x4c, 0xd4, 0x2c, 0x58, 0x07, 0x25, 0x94, 
234
+    0x03, 0x0d, 0x25, 0xc4, 0x25, 0x20, 0x0c, 0x45, 0x0f, 0x2c, 0xa8, 0x05, 0x25, 0x94, 0x58, 0x25, 
235
+    0x3a, 0x0c, 0x05, 0x27, 0x3a, 0x58, 0x9d, 0x18, 0x0c, 0x06, 0x10, 0x0a, 0x52, 0x51, 0x0e, 0xbb, 
236
+    0x01, 0x1c, 0x09, 0x0a, 0x1c, 0xae, 0x7a, 0x0f, 0x42, 0x06, 0x10, 0x09, 0xd0, 0x2a, 0x20, 0x3b, 
237
+    0x4e, 0x96, 0xb5, 0x10, 0x0c, 0x4c, 0xb7, 0x10, 0x0b, 0x25, 0x34, 0x2c, 0xd5, 0x01, 0x3d, 0x1b, 
238
+    0x09, 0x07, 0x1e, 0x5a, 0x2b, 0x03, 0x0d, 0x1e, 0x6a, 0x1d, 0x46, 0x18, 0xa5, 0x27, 0xa5, 0x18, 
239
+    0x0b, 0x04, 0x25, 0x6a, 0x38, 0x03, 0x0d, 0x45, 0x5a, 0x38, 0x09, 0x06, 0x1d, 0x2c, 0x3d, 0x01, 
240
+    0x3d, 0x45, 0x09, 0x07, 0x00, 0x4a, 0x3e, 0x9b, 0x76, 0x68, 0x31, 0x0b, 0x0a, 0x0a, 0x31, 0x63, 
241
+    0x0f, 0x04, 0x10, 0x11, 0x4c, 0x0d, 0x18, 0x8e, 0x02, 0x18, 0xd5, 0x09, 0x05, 0x33, 0x06, 0x0e, 
242
+    0x06, 0x33, 0xa5, 0x96, 0x90, 0x33, 0xa4, 0x0a, 0x33, 0x0a, 0x05, 0x37, 0x76, 0x38, 0x68, 0x0d, 
243
+    0x2c, 0x3d, 0x96, 0x08, 0x53, 0x7b, 0x0c, 0x00, 0x0c, 0x02, 0x35, 0x5e, 0x1b, 0x26, 0x35, 0x05, 
244
+    0x08, 0x00, 0x8a, 0x35, 0x0c, 0x04, 0x89, 0x0c, 0x02, 0x00, 0x09, 0x05, 0x00, 0x05, 0x09, 0x9b, 
245
+    0x0d, 0x2b, 0x07, 0x07, 0x00, 0x0c, 0x01, 0x00, 0x6b, 0x00, 0x4a, 0x2b, 0xf2, 0x01, 0x0c, 0x38, 
246
+    0x0c, 0x01, 0x6a, 0x1d, 0x0c, 0x5a, 0x38, 0xa4, 0x0c, 0x27, 0x07, 0x0e, 0x05, 0x38, 0x05, 0x0f, 
247
+    0x07, 0x27, 0x67, 0x02, 0x35, 0x9b, 0x43, 0x10, 0x0b, 0x4c, 0xd7, 0x89, 0x2c, 0x60, 0x2c, 0x68, 
248
+    0x25, 0x06, 0x0b, 0x38, 0x0a, 0x06, 0x3e, 0x46, 0x00, 0xa5, 0x3e, 0x9b, 0x68, 0x68, 0x31, 0x08, 
249
+    0x8c, 0x31, 0x0c, 0x08, 0x0c, 0x31, 0x06, 0x0a, 0x00, 0x0a, 0x06, 0x27, 0x2c, 0x68, 0x7b, 0x68, 
250
+    0x45, 0x5f, 0x38, 0x06, 0x0a, 0x25, 0xf2, 0x18, 0x0c, 0x05, 0x27, 0x0b, 0xf8, 0x03, 0x76, 0x10, 
251
+    0x09, 0xd0, 0xd7, 0x1d, 0x9b, 0x60, 0xdd, 0x10, 0x0c, 0x4c, 0x20, 0xbc, 0x10, 0x06, 0x4c, 0x2a, 
252
+    0x30, 0xe5, 0x96, 0x2a, 0x10, 0x05, 0xd0, 0x6a, 0x1c, 0x08, 0x08, 0x30, 0xee, 0x56, 0x60, 0x1c, 
253
+    0x09, 0x83, 0xa5, 0x3b, 0x2c, 0x7d, 0x46, 0x1c, 0x5e, 0x1c, 0x19, 0x56, 0x0c, 0x04, 0x1c, 0x4a, 
254
+    0x1c, 0xe7, 0x10, 0x06, 0x52, 0x2a, 0x56, 0xe5, 0x32, 0x2a, 0x10, 0x0d, 0x81, 0x05, 0x97, 0x05, 
255
+    0x3b, 0x57, 0x09, 0x8d, 0x05, 0x45, 0x57, 0x06, 0x35, 0x57, 0x06, 0x27, 0x07, 0xa7, 0x38, 0x63, 
256
+    0x86, 0x10, 0x08, 0x4c, 0x78, 0x97, 0x20, 0x10, 0x08, 0x37, 0x1a, 0x08, 0x36, 0x10, 0x09, 0x59, 
257
+    0x9b, 0xb4, 0xf4, 0x10, 0x0a, 0x4c, 0xfe, 0x43, 0x7c, 0xc1, 0x9d, 0xce, 0xc3, 0x0e, 0x4f, 0x10, 
258
+    0x09, 0x59, 0x9b, 0x7c, 0xaf, 0x10, 0x0a, 0x35, 0xf9, 0x21, 0x96, 0x26, 0xbf, 0xac, 0x0e, 0xf4, 
259
+    0x10, 0x09, 0x59, 0xee, 0xc0, 0x10, 0x06, 0x52, 0x58, 0x0f, 0x29, 0x6a, 0x1c, 0x0f, 0x1c, 0x70, 
260
+    0x31, 0xf7, 0x3b, 0xf7, 0x10, 0x0a, 0x5c, 0x03, 0xac, 0x0e, 0xf4, 0x25, 0x19, 0xbd, 0x1e, 0xf3, 
261
+    0x01, 0x82, 0x88, 0x45, 0x49, 0x0e, 0x42, 0x05, 0x10, 0x0a, 0x4c, 0xfe, 0xc5, 0x10, 0x03, 0x4c, 
262
+    0x4e, 0x95, 0xb5, 0x10, 0x03, 0x4c, 0x4e, 0x95, 0xb5, 0x27, 0x0e, 0x30, 0xee, 0x30, 0x0f, 0x6a, 
263
+    0x10, 0x09, 0x4c, 0xf7, 0x8b, 0x53, 0x9d, 0x63, 0x50, 0x35, 0x9d, 0x51, 0x02, 0x45, 0x28, 0x5d, 
264
+    0x01, 0x3e, 0x28, 0x3d, 0x3e, 0x28, 0x06, 0x2e, 0x9d, 0x04, 0x50, 0x3e, 0x0f, 0x38, 0x03, 0x64, 
265
+    0x45, 0x0f, 0x38, 0x9b, 0x9c, 0x10, 0x03, 0x4c, 0xe5, 0x10, 0x0f, 0x59, 0x43, 0x7c, 0x8c, 0x01, 
266
+    0x7c, 0x3c, 0x89, 0x0f, 0x09, 0x06, 0x01, 0xf2, 0x5a, 0x06, 0x01, 0xf2, 0x06, 0x1b, 0x0f, 0x06, 
267
+    0x38, 0x8b, 0x06, 0x38, 0x44, 0x1b, 0x0f, 0x02, 0x38, 0x67, 0x02, 0x2c, 0x0e, 0x1b, 0x94, 0x94, 
268
+    0x0f, 0x1b, 0x94, 0x94, 0x0f, 0x1b, 0x94, 0x94, 0x0f, 0x1b, 0x94, 0x94, 0x0f, 0x1b, 0x94, 0x94, 
269
+    0x0f, 0x10, 0x0a, 0x59, 0xc5, 0x10, 0x0a, 0x5c, 0xb0, 0xd3, 0x10, 0x0a, 0x59, 0x43, 0x7c, 0xc1, 
270
+    0x9d, 0xce, 0xc3, 0x0e, 0x4f, 0x45, 0x21, 0x10, 0x0a, 0x5c, 0x26, 0xbf, 0xac, 0x3c, 0x01, 0xf7, 
271
+    0x10, 0x07, 0x59, 0x43, 0x09, 0xa2, 0x3b, 0x0f, 0x09, 0x87, 0x31, 0x0f, 0x07, 0x1c, 0x0f, 0x02, 
272
+    0x1c, 0xfe, 0x4e, 0x10, 0x09, 0x59, 0x01, 0x08, 0x23, 0xb1, 0xc9, 0x10, 0x06, 0x3b, 0xf9, 0x4e, 
273
+    0x1e, 0x77, 0x31, 0xfe, 0xfe, 0x0c, 0x05, 0x1c, 0x9e, 0x97, 0x10, 0x0a, 0x59, 0xde, 0xde, 0xbe, 
274
+    0x10, 0x09, 0x30, 0x93, 0xf2, 0x1e, 0x50, 0x1d, 0x0a, 0x06, 0x18, 0x51, 0x27, 0x03, 0x0d, 0x18, 
275
+    0x50, 0x25, 0x6d, 0x38, 0x9a, 0x25, 0x63, 0x3d, 0x01, 0x0e, 0x05, 0x3e, 0x9f, 0x08, 0x0d, 0x3b, 
276
+    0xa8, 0x19, 0x05, 0x31, 0x0d, 0x0e, 0x0d, 0x35, 0xdc, 0x10, 0x0d, 0x30, 0x93, 0x03, 0x0d, 0x33, 
277
+    0x6b, 0x18, 0x6a, 0x37, 0x0c, 0x04, 0x38, 0x06, 0x0e, 0x05, 0x35, 0xee, 0x1b, 0x06, 0x0a, 0x38, 
278
+    0x0c, 0x06, 0x0b, 0x38, 0x0a, 0x06, 0x1e, 0x2c, 0x3d, 0x44, 0x00, 0x0c, 0x02, 0x7b, 0x3d, 0x1b, 
279
+    0x0a, 0x07, 0x00, 0x5f, 0x00, 0x07, 0x07, 0x00, 0x5a, 0x89, 0xee, 0x00, 0x60, 0x9b, 0x0d, 0x00, 
280
+    0x6f, 0x2b, 0x62, 0x0b, 0x38, 0x0b, 0x08, 0x0c, 0x27, 0x98, 0x06, 0x38, 0x57, 0x06, 0x27, 0x19, 
281
+    0x01, 0x2c, 0x3d, 0x10, 0x0a, 0x59, 0xa9, 0x33, 0x84, 0x89, 0x2c, 0x6a, 0x35, 0x8b, 0x01, 0x45, 
282
+    0x49, 0x35, 0x0c, 0x05, 0x3b, 0x09, 0x07, 0x61, 0x45, 0x2c, 0x0c, 0x68, 0x31, 0x09, 0x05, 0x5e, 
283
+    0x3b, 0xa6, 0x35, 0x0b, 0x04, 0x1d, 0x2c, 0x68, 0x00, 0x9b, 0x76, 0x25, 0xa9, 0x33, 0x84, 0x10, 
284
+    0x09, 0x1c, 0x93, 0x0c, 0xf8, 0xb8, 0x48, 0x0a, 0x01, 0x10, 0x09, 0x59, 0xd1, 0xf6, 0x10, 0x0a, 
285
+    0x69, 0x58, 0x0f, 0x30, 0x64, 0x1c, 0x21, 0x1d, 0x67, 0x1c, 0x9a, 0x30, 0x97, 0x04, 0x1c, 0x51, 
286
+    0xfa, 0x18, 0xfe, 0x64, 0x1c, 0x58, 0x0f, 0x10, 0x05, 0x52, 0xe5, 0x96, 0xf7, 0x10, 0x0a, 0x52, 
287
+    0x0f, 0x64, 0x1c, 0x58, 0x56, 0xfe, 0x43, 0x1c, 0x9f, 0x31, 0x63, 0x97, 0x30, 0x0c, 0x83, 0x43, 
288
+    0x1c, 0x21, 0x1d, 0x58, 0x30, 0x0f, 0x64, 0x10, 0x0d, 0x22, 0x75, 0xdf, 0xfc, 0x10, 
289
+};
290
+
291
+static const uint16_t mf_rlefont_phpRVS9jE_glyph_offsets_0[95] = {
292
+    0x0000, 0x0003, 0x000e, 0x0016, 0x0053, 0x0086, 0x00af, 0x00f4, 
293
+    0x00f8, 0x011c, 0x0145, 0x015f, 0x0169, 0x0173, 0x0178, 0x017d, 
294
+    0x019c, 0x01d5, 0x01e1, 0x020d, 0x023a, 0x025c, 0x027f, 0x02bb, 
295
+    0x02d9, 0x0314, 0x0347, 0x034f, 0x035c, 0x0387, 0x038f, 0x03b6, 
296
+    0x03d3, 0x043c, 0x0442, 0x0474, 0x0478, 0x04ae, 0x04b3, 0x04be, 
297
+    0x04cf, 0x04dc, 0x04e0, 0x04ec, 0x0521, 0x0529, 0x0570, 0x0584, 
298
+    0x0589, 0x05a2, 0x05d8, 0x05fb, 0x060b, 0x0614, 0x0618, 0x0653, 
299
+    0x06b8, 0x06f0, 0x06f8, 0x06fd, 0x0705, 0x0723, 0x072b, 0x0742, 
300
+    0x0748, 0x074e, 0x0754, 0x0760, 0x0766, 0x0771, 0x0776, 0x0785, 
301
+    0x0799, 0x079e, 0x07a4, 0x07b1, 0x07d6, 0x07da, 0x0812, 0x0816, 
302
+    0x081b, 0x0828, 0x0831, 0x0844, 0x084c, 0x085b, 0x0861, 0x088a, 
303
+    0x08d4, 0x0900, 0x090a, 0x090f, 0x0928, 0x092e, 0x0948, 
304
+};
305
+
306
+static const uint8_t mf_rlefont_phpRVS9jE_glyph_data_1[1970] = {
307
+    0x0a, 0x00, 0x10, 0x06, 0x2d, 0x4e, 0x00, 0x34, 0x0d, 0x56, 0x0e, 0x56, 0x3f, 0x10, 0x0a, 0x56, 
308
+    0xf9, 0x4e, 0x35, 0x2c, 0x7a, 0x0f, 0x64, 0x25, 0x9b, 0x3c, 0x74, 0x02, 0x09, 0x45, 0xa9, 0x4b, 
309
+    0x45, 0x60, 0x4b, 0x45, 0x43, 0x4b, 0x45, 0x60, 0x4b, 0x45, 0xa9, 0x4b, 0x25, 0x9b, 0x3c, 0x74, 
310
+    0x02, 0x0a, 0x45, 0x9b, 0x0a, 0xa2, 0x64, 0x30, 0x4e, 0x10, 0x0a, 0xd0, 0x2c, 0x7c, 0x64, 0x3b, 
311
+    0x08, 0x0a, 0x01, 0x02, 0x09, 0x3b, 0x68, 0x1c, 0x21, 0x2b, 0x77, 0x29, 0xf7, 0x45, 0x1f, 0x10, 
312
+    0x0a, 0x59, 0x09, 0x06, 0x18, 0x5e, 0x27, 0x05, 0x0f, 0x6c, 0x0f, 0x0d, 0xa3, 0x05, 0x25, 0x6c, 
313
+    0x55, 0x9e, 0x0a, 0x45, 0x50, 0x38, 0x9e, 0x45, 0x43, 0x38, 0x67, 0x45, 0x50, 0x38, 0x9e, 0x45, 
314
+    0x6c, 0x55, 0x9e, 0x0a, 0x25, 0x05, 0x0f, 0x6c, 0x0f, 0x0d, 0x8d, 0x05, 0x27, 0x09, 0x05, 0x18, 
315
+    0x05, 0x09, 0x10, 0x0a, 0xd0, 0xa0, 0x00, 0x06, 0x0b, 0x1d, 0x9b, 0x76, 0x2c, 0x68, 0x25, 0x5f, 
316
+    0x38, 0x4a, 0x1d, 0x2c, 0x76, 0x7b, 0x76, 0x3e, 0x06, 0x08, 0x00, 0x08, 0x06, 0x3e, 0x0f, 0x48, 
317
+    0x8b, 0x97, 0x3b, 0x06, 0x0e, 0x06, 0x3e, 0x2c, 0x43, 0x3b, 0x1f, 0x21, 0x10, 0x05, 0x31, 0xf9, 
318
+    0x3f, 0x1b, 0x34, 0x3f, 0x10, 0x08, 0x52, 0x44, 0x0e, 0x97, 0x3b, 0x64, 0x1c, 0x0f, 0x03, 0x1c, 
319
+    0x0d, 0x86, 0x01, 0x3b, 0x06, 0x0e, 0x7c, 0x50, 0x3e, 0x6a, 0x9b, 0x4d, 0x04, 0x45, 0x43, 0x38, 
320
+    0x08, 0x0c, 0x45, 0x0c, 0x0a, 0x01, 0x35, 0x67, 0x45, 0x8b, 0x50, 0x00, 0x49, 0x45, 0x9b, 0x4d, 
321
+    0x0c, 0xa7, 0x31, 0x58, 0x0d, 0x1c, 0x8e, 0x1c, 0x51, 0x3b, 0x2a, 0x4f, 0x10, 0x08, 0x52, 0xcd, 
322
+    0x10, 0x10, 0x81, 0x51, 0x0e, 0x42, 0x06, 0x25, 0xf2, 0x0b, 0x55, 0x7e, 0xab, 0x02, 0x1d, 0x9f, 
323
+    0x07, 0xa2, 0x85, 0x9a, 0x2b, 0x61, 0x00, 0x51, 0x03, 0x33, 0x0a, 0x07, 0x89, 0x0c, 0x04, 0x00, 
324
+    0x0c, 0xf8, 0x47, 0x89, 0x3d, 0x3d, 0x00, 0x2c, 0x0e, 0x89, 0x3d, 0x3d, 0x00, 0x2c, 0x0e, 0x89, 
325
+    0x0c, 0x04, 0x00, 0x0c, 0xf8, 0x47, 0x89, 0x61, 0x00, 0x49, 0x03, 0x33, 0x0a, 0x07, 0x2b, 0x0c, 
326
+    0x08, 0x00, 0x07, 0xa2, 0x85, 0x9a, 0x1d, 0xf2, 0x0b, 0x55, 0x7e, 0xea, 0x10, 0x08, 0x52, 0x97, 
327
+    0x42, 0x03, 0x1c, 0x49, 0x3e, 0x03, 0xac, 0x2a, 0x3e, 0x88, 0x01, 0x00, 0x67, 0x3e, 0x0e, 0x05, 
328
+    0x9b, 0xa3, 0x3e, 0x9e, 0x0f, 0x64, 0x0f, 0x40, 0x09, 0x77, 0x10, 0x0a, 0x1e, 0x75, 0x09, 0x38, 
329
+    0x09, 0x45, 0xf2, 0x0a, 0x00, 0xf2, 0x0a, 0x25, 0x03, 0x9c, 0x03, 0x9c, 0x25, 0x8c, 0x00, 0x8c, 
330
+    0x25, 0x63, 0x9c, 0x9e, 0x07, 0x3e, 0xf2, 0x0a, 0x00, 0xf2, 0x0a, 0x3b, 0x09, 0x38, 0x09, 0x10, 
331
+    0x0d, 0x79, 0x75, 0x2f, 0xf7, 0x10, 0x06, 0x4c, 0x75, 0x70, 0x10, 0x10, 0x81, 0x51, 0x0e, 0x42, 
332
+    0x06, 0x25, 0xf2, 0x0b, 0x55, 0x7e, 0xab, 0x02, 0x1d, 0x9f, 0x2a, 0x0c, 0x04, 0x9a, 0x2b, 0x61, 
333
+    0x4b, 0x04, 0x0e, 0x00, 0x0a, 0x07, 0x89, 0x0c, 0x04, 0x4b, 0x04, 0x0e, 0xee, 0x89, 0x3d, 0x00, 
334
+    0x2a, 0xa7, 0x7b, 0x0e, 0x89, 0x3d, 0x28, 0x57, 0x02, 0x7b, 0x0e, 0x89, 0x0c, 0x04, 0x4b, 0x0b, 
335
+    0x09, 0xee, 0x89, 0x61, 0x4b, 0x04, 0x0f, 0x03, 0x0a, 0x07, 0x2b, 0x0c, 0x08, 0x28, 0x35, 0x4d, 
336
+    0x0c, 0x1d, 0xf2, 0x0b, 0x55, 0x7e, 0xea, 0x10, 0x08, 0x52, 0x77, 0x10, 0x08, 0x52, 0xe8, 0x5b, 
337
+    0x3e, 0x6d, 0x01, 0x61, 0x3b, 0x3d, 0x01, 0x0e, 0x3b, 0x6d, 0x01, 0x61, 0x3b, 0xe8, 0x5b, 0x10, 
338
+    0x0d, 0x33, 0x93, 0x21, 0x1b, 0x2a, 0x20, 0x3b, 0x21, 0x38, 0x34, 0x2a, 0x20, 0x10, 0x06, 0x4c, 
339
+    0x2a, 0x6f, 0x30, 0xa1, 0x1c, 0x44, 0x31, 0x9b, 0x50, 0x31, 0x03, 0x64, 0x31, 0xa8, 0x05, 0x30, 
340
+    0x77, 0x10, 0x06, 0x4c, 0x2a, 0x0c, 0x04, 0x1c, 0xa8, 0x3e, 0x2c, 0x58, 0x31, 0x2a, 0x04, 0x3e, 
341
+    0x2c, 0x58, 0x3e, 0x2c, 0x58, 0x3b, 0x97, 0x42, 0x04, 0x10, 0x08, 0x34, 0x19, 0x08, 0x30, 0x39, 
342
+    0x10, 0x0a, 0x59, 0xde, 0xde, 0xde, 0x0f, 0x02, 0x33, 0x74, 0x25, 0x0f, 0x0c, 0x03, 0x01, 0x01, 
343
+    0x9e, 0x43, 0x27, 0x0f, 0xa1, 0x97, 0x0c, 0x06, 0x0a, 0x0e, 0x27, 0x21, 0x10, 0x0a, 0x52, 0x03, 
344
+    0xac, 0x2a, 0x45, 0x05, 0x70, 0x0f, 0x45, 0x0d, 0x70, 0x0f, 0x45, 0x77, 0x28, 0x25, 0x0d, 0x70, 
345
+    0x0f, 0x45, 0x05, 0x70, 0x0f, 0x3e, 0x03, 0x6c, 0x85, 0x29, 0xfd, 0xfd, 0xfd, 0xfd, 0xfd, 0xfd, 
346
+    0xfd, 0x10, 0x05, 0x79, 0x75, 0x4e, 0x10, 0x08, 0x1e, 0x78, 0xc8, 0x09, 0x10, 0x06, 0x4c, 0x97, 
347
+    0x3f, 0x25, 0x77, 0x10, 0x08, 0xd0, 0x7b, 0x7c, 0x3c, 0x01, 0x3e, 0x09, 0x0a, 0x01, 0x01, 0x0a, 
348
+    0x09, 0x3e, 0x3d, 0x7b, 0x0e, 0x3e, 0x3d, 0x7b, 0x0e, 0x3e, 0x09, 0x0a, 0x01, 0x01, 0x0a, 0x09, 
349
+    0x27, 0x2c, 0x7c, 0x3c, 0x01, 0x40, 0x4d, 0x2a, 0x0b, 0x10, 0x0a, 0x18, 0x75, 0x09, 0x38, 0x09, 
350
+    0x3b, 0xab, 0x02, 0x00, 0xab, 0x02, 0x3e, 0x07, 0x6a, 0x00, 0x07, 0x6a, 0x3e, 0x08, 0x0e, 0x35, 
351
+    0x08, 0x0e, 0x45, 0x07, 0x6a, 0x00, 0x07, 0x6a, 0x25, 0xab, 0x02, 0x00, 0xab, 0x02, 0x45, 0x09, 
352
+    0x38, 0x09, 0x10, 0x10, 0xd8, 0x53, 0xe9, 0x0c, 0x06, 0x35, 0x98, 0x89, 0x77, 0x06, 0x0b, 0x00, 
353
+    0x7b, 0x4d, 0xe1, 0x37, 0x2c, 0x65, 0x38, 0x77, 0x2b, 0xa9, 0x1e, 0x0f, 0x10, 0x10, 0xd8, 0x53, 
354
+    0xe9, 0x0c, 0x53, 0x2a, 0x6f, 0x96, 0x77, 0x06, 0x0b, 0x18, 0xa1, 0x2b, 0x9b, 0x60, 0x18, 0x44, 
355
+    0x1d, 0x6d, 0x33, 0x9b, 0x50, 0x2b, 0x51, 0x18, 0x03, 0x64, 0x37, 0x2c, 0x65, 0x33, 0xa8, 0x05, 
356
+    0x1d, 0xa9, 0x18, 0x77, 0x10, 0x10, 0x4c, 0x2a, 0x0c, 0x04, 0x33, 0x84, 0x27, 0xa8, 0x38, 0x8b, 
357
+    0x01, 0x89, 0x2c, 0x58, 0x38, 0x0c, 0x06, 0x27, 0x2a, 0x04, 0x35, 0x61, 0x1d, 0x2c, 0x58, 0x9b, 
358
+    0x60, 0x1d, 0x2c, 0x58, 0x00, 0x0c, 0x06, 0x35, 0x98, 0x89, 0x97, 0x42, 0x04, 0x06, 0x0b, 0x00, 
359
+    0x7b, 0x4d, 0xe1, 0x37, 0x2c, 0x65, 0x38, 0x77, 0x2b, 0xa9, 0x1e, 0x0f, 0x10, 0x09, 0x81, 0x4e, 
360
+    0x95, 0x0f, 0x1c, 0x67, 0x1c, 0x61, 0x30, 0x09, 0x60, 0x31, 0x07, 0xa7, 0x30, 0x6a, 0x1c, 0x7d, 
361
+    0x0a, 0x09, 0x01, 0x01, 0xa5, 0x27, 0x2c, 0x7c, 0x0e, 0x0b, 0x04, 0x10, 0x0b, 0x32, 0xca, 0x0b, 
362
+    0x1a, 0x2c, 0xad, 0xf1, 0x10, 0x0b, 0x1e, 0xb2, 0x1a, 0x2c, 0xad, 0xf1, 0x10, 0x0b, 0x1e, 0xd2, 
363
+    0x00, 0x2c, 0xad, 0xf1, 0x10, 0x0b, 0x18, 0xec, 0x07, 0x40, 0x2c, 0xad, 0xf1, 0x10, 0x0b, 0x32, 
364
+    0xcd, 0x00, 0x2c, 0xad, 0xf1, 0x10, 0x0b, 0x32, 0x44, 0x42, 0x03, 0x3b, 0x64, 0x00, 0x58, 0x3b, 
365
+    0x0e, 0x05, 0x00, 0x58, 0x3e, 0x63, 0x0f, 0x8d, 0x04, 0x3b, 0x58, 0x00, 0x64, 0x3b, 0x0a, 0x07, 
366
+    0x00, 0x06, 0x0a, 0x27, 0x2c, 0x3d, 0x01, 0x3d, 0x25, 0x5a, 0x38, 0x5f, 0x45, 0x6f, 0x35, 0xf2, 
367
+    0x25, 0x26, 0x18, 0x54, 0x27, 0x8a, 0x18, 0x03, 0x08, 0x27, 0x0e, 0x20, 0x48, 0x1d, 0x58, 0x1e, 
368
+    0x64, 0x2b, 0x0a, 0x07, 0x1e, 0xff, 0x01, 0xd5, 0x01, 0x3d, 0x10, 0x10, 0x69, 0x05, 0x77, 0x77, 
369
+    0x2b, 0x0b, 0x04, 0x28, 0x3e, 0xf2, 0x4b, 0x45, 0x08, 0x53, 0x28, 0x3e, 0x76, 0x4b, 0x25, 0x05, 
370
+    0x09, 0x38, 0x97, 0x20, 0x1b, 0x4f, 0x72, 0x96, 0xf2, 0x33, 0x0f, 0x45, 0x09, 0x20, 0x2b, 0x2c, 
371
+    0x60, 0x33, 0x0f, 0x25, 0x06, 0x0a, 0x18, 0x0f, 0x25, 0x0c, 0xf8, 0x97, 0x20, 0x10, 0x0b, 0x2d, 
372
+    0xb6, 0x3b, 0xc8, 0x09, 0x10, 0x0a, 0x32, 0xca, 0x0b, 0x1a, 0xc7, 0x66, 0x10, 0x0a, 0x1e, 0xb2, 
373
+    0x1a, 0xc7, 0x66, 0x10, 0x0a, 0x1e, 0xd2, 0x00, 0xc7, 0x66, 0x10, 0x0a, 0x32, 0xcd, 0x00, 0xc7, 
374
+    0x66, 0x10, 0x05, 0x38, 0xca, 0x0b, 0x33, 0x1a, 0xe5, 0x10, 0x05, 0x33, 0xb2, 0x33, 0x1a, 0xe5, 
375
+    0x10, 0x05, 0x33, 0xd2, 0x18, 0xe5, 0x10, 0x05, 0x38, 0xcd, 0x18, 0xe5, 0x10, 0x0d, 0x52, 0x2a, 
376
+    0x48, 0x6d, 0x01, 0x25, 0x0f, 0x38, 0x7e, 0x7c, 0x05, 0x27, 0x3a, 0x03, 0x60, 0x1d, 0x3a, 0xfb, 
377
+    0x3a, 0x9b, 0x0d, 0x89, 0x97, 0x70, 0x2c, 0x0e, 0x1d, 0x3a, 0x7b, 0x0e, 0x1d, 0x0f, 0x1e, 0x03, 
378
+    0x0d, 0x1d, 0x3a, 0xfb, 0x3a, 0x03, 0x60, 0x1d, 0x0f, 0x38, 0x7e, 0x7c, 0x05, 0x27, 0x2a, 0x48, 
379
+    0x6d, 0x01, 0x10, 0x0c, 0x32, 0xec, 0x07, 0x96, 0x95, 0x0f, 0x60, 0x32, 0x0f, 0x1d, 0xd9, 0x28, 
380
+    0x2b, 0xe0, 0x33, 0xb9, 0x57, 0x1d, 0x94, 0x7b, 0x0c, 0x0f, 0x10, 0x0d, 0x1e, 0xca, 0x0b, 0x00, 
381
+    0x1a, 0x71, 0xba, 0x10, 0x0d, 0x96, 0xb2, 0x00, 0x1a, 0x71, 0xba, 0x10, 0x0d, 0x96, 0xd2, 0x35, 
382
+    0x71, 0xba, 0x10, 0x0d, 0x32, 0xec, 0x07, 0x1a, 0x71, 0xba, 0x10, 0x0d, 0x1e, 0xcd, 0x35, 0x71, 
383
+    0xba, 0x10, 0x0d, 0x93, 0xaa, 0x33, 0x9b, 0x0a, 0x27, 0x07, 0xf5, 0x02, 0x9c, 0x27, 0x07, 0x68, 
384
+    0x9b, 0x9c, 0x45, 0x07, 0x6a, 0x9c, 0x3b, 0x4d, 0x0a, 0x31, 0x07, 0x6a, 0x9c, 0x45, 0x07, 0x68, 
385
+    0x9b, 0x9c, 0x27, 0x07, 0xf5, 0x02, 0x9c, 0x1d, 0xaa, 0x33, 0x9b, 0x0a, 0x10, 0x0d, 0x33, 0x34, 
386
+    0x2c, 0x27, 0x91, 0x23, 0x0b, 0x06, 0x44, 0x1d, 0x03, 0x0d, 0x07, 0x02, 0x9b, 0x07, 0xa2, 0x06, 
387
+    0x37, 0x2c, 0x6a, 0x00, 0x2c, 0x0c, 0x0c, 0x05, 0x2b, 0x5f, 0x18, 0x0b, 0x04, 0x5e, 0x2b, 0x6f, 
388
+    0x38, 0x0a, 0x53, 0x03, 0x0d, 0x2b, 0x0e, 0x33, 0x5f, 0x35, 0x67, 0x2b, 0x43, 0x35, 0x5a, 0x2c, 
389
+    0x0e, 0x2b, 0x6a, 0x00, 0x05, 0x0a, 0x33, 0x44, 0x2b, 0x08, 0x06, 0xa6, 0x18, 0x4a, 0x89, 0xee, 
390
+    0x0c, 0x01, 0x33, 0x03, 0x76, 0x2b, 0x57, 0x86, 0x02, 0x9b, 0x06, 0x50, 0x1d, 0x0c, 0x03, 0x06, 
391
+    0x0b, 0xa2, 0x62, 0x02, 0x89, 0x2c, 0x10, 0x0c, 0x1e, 0xca, 0x0b, 0x40, 0xb7, 0x10, 0x0c, 0x96, 
392
+    0xb2, 0x40, 0xb7, 0x10, 0x0c, 0x96, 0xd2, 0xb7, 0x10, 0x0c, 0x1e, 0xcd, 0xb7, 0x10, 0x09, 0x1e, 
393
+    0xb2, 0x40, 0xd7, 0x1d, 0x9b, 0x60, 0xdd, 0x10, 0x0a, 0x4c, 0x4e, 0x96, 0xd4, 0x38, 0x82, 0x88, 
394
+    0x25, 0x94, 0x9e, 0x25, 0xc4, 0x25, 0xd4, 0x56, 0x4e, 0x10, 0x0a, 0x52, 0x07, 0x0d, 0x0e, 0x9c, 
395
+    0x45, 0x08, 0x4f, 0x9b, 0x6d, 0x45, 0xf5, 0x03, 0x0d, 0x25, 0x28, 0x9b, 0x0b, 0x0b, 0x08, 0x35, 
396
+    0x9d, 0x46, 0x33, 0x9d, 0x60, 0x33, 0x9d, 0x0c, 0x86, 0x01, 0x25, 0x28, 0x63, 0xa2, 0x68, 0x25, 
397
+    0x0f, 0x33, 0x49, 0x0c, 0x00, 0x9d, 0x2c, 0x0e, 0x27, 0x28, 0x2c, 0x61, 0x27, 0x28, 0x2a, 0x0d, 
398
+    0x09, 0x01, 0x10, 0x09, 0xb3, 0x9b, 0xb4, 0xf4, 0x10, 0x09, 0xdb, 0x1a, 0x9b, 0xb4, 0xf4, 0x10, 
399
+    0x09, 0x34, 0x57, 0xcb, 0xff, 0x79, 0x9b, 0xb4, 0xf4, 0x10, 0x09, 0x52, 0xf0, 0x9b, 0xb4, 0xf4, 
400
+    0x10, 0x09, 0xda, 0xd6, 0x9b, 0xb4, 0xf4, 0x10, 0x09, 0x00, 0x79, 0x9e, 0x50, 0x31, 0x6a, 0xe7, 
401
+    0x6a, 0xe7, 0x9e, 0x50, 0x40, 0x9b, 0xb4, 0xf4, 0x10, 0x10, 0x5c, 0x91, 0x0e, 0x0e, 0x4f, 0x9a, 
402
+    0x0e, 0x0e, 0x0b, 0x04, 0x89, 0x88, 0x01, 0x02, 0x0a, 0x97, 0x08, 0x02, 0x82, 0xa7, 0x27, 0x67, 
403
+    0x08, 0x33, 0xa5, 0x1b, 0x07, 0x0d, 0x0e, 0x2a, 0x02, 0x00, 0x2c, 0x0e, 0x37, 0x08, 0x4f, 0x01, 
404
+    0x35, 0x97, 0x20, 0x37, 0xf5, 0x67, 0x02, 0x25, 0x3d, 0x35, 0x57, 0x07, 0x25, 0x0a, 0x0a, 0x01, 
405
+    0x01, 0x06, 0x64, 0x86, 0x02, 0x7b, 0xa5, 0x32, 0x2c, 0x7c, 0x0e, 0x5b, 0x02, 0x6c, 0x48, 0x54, 
406
+    0x10, 0x09, 0x59, 0x9b, 0x7c, 0xaf, 0x38, 0xc8, 0x09, 0x10, 0x09, 0xb3, 0xee, 0xc0, 0x10, 0x09, 
407
+    0xdb, 0x1a, 0xee, 0xc0, 0x10, 0x09, 0x34, 0x57, 0xcb, 0xff, 0x79, 0xee, 0xc0, 0x10, 0x09, 0xda, 
408
+    0xd6, 0xee, 0xc0, 0x10, 0x03, 0x1e, 0x1a, 0x08, 0x36, 0x1e, 0xb5, 0x10, 0x03, 0x22, 0x19, 0x08, 
409
+    0x30, 0x39, 0x38, 0x1a, 0xb5, 0x10, 0x03, 0x37, 0x1a, 0x57, 0xcb, 0xff, 0x95, 0xb5, 0x10, 0x03, 
410
+    0xd0, 0xcd, 0x33, 0xb5, 0x10, 0x0a, 0x52, 0x08, 0x64, 0x09, 0x64, 0x45, 0x82, 0xa2, 0xaa, 0x3e, 
411
+    0xa4, 0x02, 0x02, 0x0a, 0xaa, 0x45, 0xee, 0x2a, 0x76, 0x25, 0x8b, 0x99, 0x9b, 0x9f, 0x27, 0x0a, 
412
+    0x07, 0x33, 0x49, 0x25, 0x2e, 0x19, 0x25, 0x3a, 0x0f, 0x25, 0xf5, 0x9b, 0x0d, 0x25, 0x0a, 0x06, 
413
+    0x33, 0x06, 0x0a, 0x25, 0x8b, 0x87, 0x82, 0x65, 0x25, 0xee, 0x0e, 0x42, 0x04, 0x10, 0x0a, 0x52, 
414
+    0xf0, 0xc5, 0x10, 0x0a, 0xb3, 0x00, 0xb0, 0xd3, 0x10, 0x0a, 0xdb, 0x00, 0x1a, 0xb0, 0xd3, 0x10, 
415
+    0x0a, 0x34, 0x57, 0xcb, 0x5d, 0x40, 0xb0, 0xd3, 0x10, 0x0a, 0x52, 0xf0, 0x00, 0xb0, 0xd3, 0x10, 
416
+    0x0a, 0x2d, 0xcd, 0x35, 0xb0, 0xd3, 0x10, 0x0d, 0x37, 0x75, 0xe6, 0x40, 0x2f, 0x3b, 0xe6, 0x10, 
417
+    0x0a, 0x32, 0x93, 0x03, 0x45, 0xa6, 0xa2, 0x62, 0x0c, 0x01, 0x27, 0x19, 0x87, 0x63, 0x0f, 0x07, 
418
+    0x25, 0x0a, 0x06, 0x38, 0x09, 0xa4, 0x25, 0x68, 0x35, 0x5f, 0x6b, 0x00, 0x9d, 0x4a, 0x4b, 0x1d, 
419
+    0x76, 0x5e, 0x00, 0x9b, 0x0d, 0x25, 0xa4, 0x09, 0x38, 0x06, 0x0a, 0x25, 0x98, 0x04, 0x00, 0x82, 
420
+    0x60, 0x89, 0x2c, 0x0c, 0x9a, 0x48, 0x0b, 0x04, 0x25, 0x8f, 0x10, 0x0a, 0xb3, 0xde, 0xde, 0xbe, 
421
+    0x10, 0x0a, 0xdb, 0x1a, 0xde, 0xde, 0xbe, 0x10, 0x0a, 0x34, 0x57, 0xcb, 0xff, 0x79, 0xde, 0xde, 
422
+    0xbe, 0x10, 0x0a, 0xda, 0xd6, 0xde, 0xde, 0xbe, 0x10, 0x09, 0xdb, 0x40, 0x0c, 0xf8, 0xb8, 0x48, 
423
+    0x0a, 0x01, 0x10, 0x0a, 0x4c, 0xfe, 0x43, 0x7c, 0xc1, 0x9d, 0xce, 0xc3, 0x0e, 0x4f, 0x45, 0x21, 
424
+    0x10, 0x09, 0x2d, 0xcd, 0x0c, 0xf8, 0xb8, 0x48, 0x0a, 0x01, 0x10, 0x00, 0x0b, 0x96, 0xb2, 0x00, 
425
+    0x1a, 0xb6, 0x10, 0x09, 0xdb, 0x1a, 0x9b, 0x7c, 0xaf, 0x10, 0x0b, 0x1e, 0xe3, 0x1a, 0xb6, 0x10, 
426
+    0x09, 0x00, 0x22, 0xeb, 0xdc, 0x02, 0x7c, 0xaf, 0x10, 0x0a, 0x35, 0xf9, 0x29, 0x77, 0x1c, 0x0f, 
427
+    0x45, 0x26, 0xbf, 0xac, 0x0e, 0xf4, 0x10, 0x0c, 0x1e, 0xcc, 0x04, 0x40, 0x02, 0x7a, 0x97, 0x0d, 
428
+    0x09, 0xe4, 0x82, 0xc2, 0x32, 0x06, 0xe2, 0x48, 0x62, 0x03, 0x10, 0x0a, 0x2d, 0xcc, 0x04, 0x40, 
429
+    0x03, 0xac, 0x0e, 0xf4, 0x25, 0x19, 0xbd, 0x1e, 0xf3, 0x01, 0x82, 0x88, 0x45, 0x49, 0x0e, 0x42, 
430
+    0x05, 0x10, 
431
+};
432
+
433
+static const uint16_t mf_rlefont_phpRVS9jE_glyph_offsets_1[128] = {
434
+    0x0000, 0x0003, 0x000e, 0x003a, 0x0050, 0x0083, 0x00ad, 0x00b5, 
435
+    0x00ed, 0x00f1, 0x013d, 0x015b, 0x0180, 0x0186, 0x018b, 0x01d8, 
436
+    0x01dc, 0x01f0, 0x01fe, 0x0212, 0x022a, 0x0231, 0x024d, 0x0272, 
437
+    0x0277, 0x027d, 0x0284, 0x02aa, 0x02d3, 0x02ed, 0x0315, 0x034d, 
438
+    0x036c, 0x0375, 0x037d, 0x0385, 0x038e, 0x0396, 0x03db, 0x040e, 
439
+    0x0415, 0x041d, 0x0424, 0x042b, 0x0432, 0x043a, 0x0441, 0x0447, 
440
+    0x044d, 0x0483, 0x049b, 0x04a4, 0x04ac, 0x04b3, 0x04bb, 0x04c2, 
441
+    0x04ed, 0x0547, 0x054e, 0x0554, 0x0559, 0x055e, 0x0568, 0x057a, 
442
+    0x05b3, 0x05b9, 0x05c0, 0x05ca, 0x05d1, 0x05d8, 0x05e9, 0x0631, 
443
+    0x063a, 0x063f, 0x0645, 0x064e, 0x0654, 0x065c, 0x0666, 0x066f, 
444
+    0x0675, 0x06ae, 0x06b3, 0x06b9, 0x06c0, 0x06c9, 0x06d0, 0x06d7, 
445
+    0x06e0, 0x071b, 0x0721, 0x0728, 0x0732, 0x0739, 0x0743, 0x0751, 
446
+    0x075b, 0x075b, 0x075b, 0x075b, 0x075b, 0x075b, 0x075c, 0x0763, 
447
+    0x075b, 0x075b, 0x075b, 0x075b, 0x076a, 0x0770, 0x075b, 0x075b, 
448
+    0x075b, 0x0779, 0x075b, 0x075b, 0x075b, 0x075b, 0x075b, 0x075b, 
449
+    0x075b, 0x075b, 0x075b, 0x075b, 0x075b, 0x075b, 0x0787, 0x079b, 
450
+};
451
+
452
+static const uint8_t mf_rlefont_phpRVS9jE_glyph_data_2[11] = {
453
+    0x05, 0x33, 0xe6, 0x33, 0x1a, 0xe5, 0x10, 0x03, 0x59, 0xb5, 0x10, 
454
+};
455
+
456
+static const uint16_t mf_rlefont_phpRVS9jE_glyph_offsets_2[2] = {
457
+    0x0000, 0x0007, 
458
+};
459
+
460
+static const uint8_t mf_rlefont_phpRVS9jE_glyph_data_3[43] = {
461
+    0x09, 0x52, 0xfe, 0x0f, 0x9b, 0x06, 0x31, 0x0f, 0x04, 0x3c, 0x31, 0x48, 0x05, 0x31, 0x05, 0x0f, 
462
+    0x02, 0x31, 0x0a, 0xa2, 0x30, 0x55, 0xfe, 0x1f, 0x10, 0x04, 0x4c, 0xf7, 0x3b, 0x0f, 0x6e, 0x31, 
463
+    0x8e, 0x07, 0x3b, 0x63, 0xa2, 0x30, 0x03, 0x8e, 0x56, 0xf7, 0x10, 
464
+};
465
+
466
+static const uint16_t mf_rlefont_phpRVS9jE_glyph_offsets_3[2] = {
467
+    0x0000, 0x0019, 
468
+};
469
+
470
+static const uint8_t mf_rlefont_phpRVS9jE_glyph_data_4[183] = {
471
+    0x11, 0x52, 0x9b, 0x7a, 0x0e, 0x2a, 0x20, 0x37, 0x05, 0x86, 0x02, 0x4b, 0x1d, 0x03, 0x60, 0x33, 
472
+    0x0f, 0x25, 0x09, 0x07, 0x18, 0x0f, 0x25, 0x2e, 0x28, 0x27, 0x3a, 0x0f, 0x20, 0x92, 0x3a, 0x0f, 
473
+    0x25, 0x2e, 0x28, 0x27, 0x09, 0x07, 0x18, 0x0f, 0x25, 0x03, 0x60, 0x33, 0x0f, 0x45, 0x06, 0x86, 
474
+    0x02, 0x4b, 0x27, 0x9b, 0x7a, 0x0e, 0x2a, 0x20, 0x10, 0x0f, 0x5c, 0x49, 0x0f, 0x0c, 0x04, 0x00, 
475
+    0x44, 0x0f, 0x64, 0x89, 0x8b, 0x55, 0xa8, 0x06, 0x0e, 0x05, 0x8f, 0x50, 0x1b, 0x0a, 0x06, 0x38, 
476
+    0x57, 0x07, 0x38, 0xa5, 0x1b, 0xf5, 0x8e, 0x02, 0x38, 0x6b, 0x1b, 0x94, 0x0f, 0x20, 0x1b, 0xf5, 
477
+    0x02, 0x43, 0x25, 0x0a, 0x06, 0x38, 0x57, 0x06, 0x25, 0x03, 0xa7, 0x7e, 0x0e, 0x58, 0x87, 0x01, 
478
+    0xa6, 0x89, 0x49, 0x0f, 0x50, 0x00, 0x03, 0xac, 0x0e, 0x0b, 0x04, 0x10, 0x00, 0x0a, 0x52, 0x51, 
479
+    0x0e, 0xbb, 0x01, 0x1c, 0x09, 0x0a, 0x1c, 0xae, 0x7a, 0x0f, 0x42, 0x06, 0x31, 0xc8, 0x09, 0x10, 
480
+    0x09, 0x59, 0x01, 0x08, 0x23, 0xb1, 0xc9, 0x3e, 0xc8, 0x09, 0x10, 0x0a, 0x32, 0xe3, 0x1a, 0x51, 
481
+    0x0e, 0xbb, 0x01, 0x1c, 0x09, 0x0a, 0x1c, 0xae, 0x7a, 0x0f, 0x42, 0x06, 0x10, 0x09, 0x22, 0xeb, 
482
+    0xdc, 0x01, 0x08, 0x23, 0xb1, 0xc9, 0x10, 
483
+};
484
+
485
+static const uint16_t mf_rlefont_phpRVS9jE_glyph_offsets_4[16] = {
486
+    0x0000, 0x0039, 0x007c, 0x007c, 0x007c, 0x007c, 0x007c, 0x007c, 
487
+    0x007c, 0x007c, 0x007c, 0x007c, 0x007d, 0x0090, 0x009b, 0x00ad, 
488
+};
489
+
490
+static const uint8_t mf_rlefont_phpRVS9jE_glyph_data_5[24] = {
491
+    0x09, 0x32, 0xcd, 0xd7, 0x1d, 0x9b, 0x60, 0xdd, 0x10, 0x00, 0x0c, 0x32, 0xe3, 0x40, 0x20, 0xbc, 
492
+    0x10, 0x09, 0x22, 0xeb, 0xdc, 0xd1, 0xf6, 0x10, 
493
+};
494
+
495
+static const uint16_t mf_rlefont_phpRVS9jE_glyph_offsets_5[7] = {
496
+    0x0000, 0x0009, 0x0009, 0x0009, 0x0009, 0x000a, 0x0011, 
497
+};
498
+
499
+static const uint8_t mf_rlefont_phpRVS9jE_glyph_data_6[40] = {
500
+    0x0a, 0xf9, 0xa1, 0x97, 0x3e, 0x63, 0x0f, 0x06, 0x30, 0x0a, 0x83, 0x76, 0x3e, 0x2c, 0x0c, 0x31, 
501
+    0x06, 0x2a, 0x48, 0x31, 0x8a, 0x1c, 0x4f, 0x1c, 0x76, 0x30, 0x6b, 0x1c, 0xa6, 0x1c, 0x5a, 0x1c, 
502
+    0x46, 0x30, 0xa8, 0x01, 0x3b, 0x97, 0x50, 0x10, 
503
+};
504
+
505
+static const uint16_t mf_rlefont_phpRVS9jE_glyph_offsets_6[1] = {
506
+    0x0000, 
507
+};
508
+
509
+static const uint8_t mf_rlefont_phpRVS9jE_glyph_data_7[12] = {
510
+    0x08, 0x00, 0x22, 0x57, 0xcb, 0x5d, 0x10, 0x08, 0x22, 0xeb, 0xdc, 0x10, 
511
+};
512
+
513
+static const uint16_t mf_rlefont_phpRVS9jE_glyph_offsets_7[2] = {
514
+    0x0000, 0x0007, 
515
+};
516
+
517
+static const uint8_t mf_rlefont_phpRVS9jE_glyph_data_8[51] = {
518
+    0x08, 0x52, 0xcc, 0x04, 0x10, 0x08, 0x2d, 0xe6, 0x10, 0x08, 0x79, 0x9e, 0x50, 0x31, 0x6a, 0xe7, 
519
+    0x6a, 0xe7, 0x9e, 0x50, 0x10, 0x08, 0x1e, 0x78, 0x4a, 0x1c, 0x65, 0x1c, 0x7c, 0x0e, 0x10, 0x08, 
520
+    0x4c, 0xf0, 0x10, 0x08, 0x00, 0x22, 0x84, 0x0c, 0x0a, 0x45, 0x9b, 0x60, 0x04, 0x3d, 0x45, 0x6d, 
521
+    0x00, 0xa0, 0x10, 
522
+};
523
+
524
+static const uint16_t mf_rlefont_phpRVS9jE_glyph_offsets_8[6] = {
525
+    0x0000, 0x0005, 0x0009, 0x0015, 0x001f, 0x0023, 
526
+};
527
+
528
+static const uint8_t mf_rlefont_phpRVS9jE_glyph_data_9[63] = {
529
+    0x0c, 0x2d, 0x71, 0xaa, 0x25, 0x58, 0x99, 0x9b, 0x06, 0x64, 0x2b, 0x9b, 0x2e, 0x9b, 0x68, 0x2b, 
530
+    0x09, 0x06, 0x1e, 0x5e, 0x2b, 0x68, 0x32, 0x9b, 0x0d, 0x37, 0x72, 0x28, 0x89, 0xd5, 0x19, 0x2b, 
531
+    0x0c, 0x06, 0x1e, 0x51, 0x2b, 0x08, 0x76, 0x35, 0x2c, 0x62, 0x37, 0x2c, 0x0e, 0x0b, 0x01, 0x2c, 
532
+    0x4d, 0x02, 0x1d, 0x57, 0x50, 0x00, 0x9e, 0x0f, 0x06, 0x2b, 0x74, 0x70, 0x77, 0x02, 0x10, 
533
+};
534
+
535
+static const uint16_t mf_rlefont_phpRVS9jE_glyph_offsets_9[1] = {
536
+    0x0000, 
537
+};
538
+
539
+static const uint8_t mf_rlefont_phpRVS9jE_glyph_data_10[49] = {
540
+    0x09, 0x38, 0x75, 0x44, 0x0e, 0x20, 0x0d, 0x1d, 0x0c, 0x06, 0x98, 0x02, 0x00, 0x05, 0x43, 0x45, 
541
+    0xac, 0x35, 0x9a, 0x3e, 0x0e, 0x0a, 0x35, 0xa4, 0x25, 0x63, 0x0f, 0x06, 0x35, 0x0c, 0x05, 0x45, 
542
+    0x98, 0x02, 0x35, 0x3d, 0x25, 0x0b, 0x0d, 0x38, 0x0f, 0x02, 0x45, 0x0e, 0x0a, 0x38, 0x8d, 0x09, 
543
+    0x10, 
544
+};
545
+
546
+static const uint16_t mf_rlefont_phpRVS9jE_glyph_offsets_10[1] = {
547
+    0x0000, 
548
+};
549
+
550
+static const uint8_t mf_rlefont_phpRVS9jE_glyph_data_11[235] = {
551
+    0x08, 0xd0, 0x75, 0x97, 0x20, 0x10, 0x10, 0xd0, 0x75, 0x20, 0x2f, 0x10, 0x00, 0x05, 0x4c, 0x44, 
552
+    0x1c, 0x09, 0x83, 0x7d, 0x0f, 0x10, 0x05, 0x52, 0x97, 0x30, 0x67, 0x0c, 0x30, 0x07, 0x60, 0x30, 
553
+    0x0c, 0x06, 0x10, 0x05, 0x5c, 0x75, 0x0f, 0xfa, 0x33, 0x5e, 0x1c, 0x6f, 0x10, 0x08, 0x4c, 0x44, 
554
+    0x00, 0x44, 0x3b, 0x09, 0x53, 0x09, 0x06, 0x3b, 0x3d, 0xd5, 0xd6, 0x10, 0x08, 0xd0, 0x4b, 0x0f, 
555
+    0x25, 0x2c, 0xed, 0x3b, 0x6f, 0x6f, 0x10, 0x08, 0x5c, 0x75, 0x73, 0x0f, 0x25, 0x2c, 0xed, 0x3b, 
556
+    0x6f, 0x6f, 0x10, 0x08, 0x2d, 0x21, 0x89, 0x1f, 0xb5, 0x9d, 0x10, 0x08, 0x2d, 0x21, 0x89, 0x1f, 
557
+    0x3f, 0x27, 0x1f, 0x21, 0x10, 0x09, 0x18, 0x75, 0xe8, 0x5b, 0x3e, 0x0b, 0x2a, 0x0b, 0x3b, 0x0e, 
558
+    0x97, 0x48, 0x3b, 0x0b, 0x2a, 0x0b, 0x3b, 0xe8, 0x5b, 0x10, 0x10, 0x5c, 0x75, 0x73, 0x4b, 0x4b, 
559
+    0x96, 0x4b, 0x4b, 0x4b, 0x10, 0x15, 0x4c, 0xe8, 0xcf, 0x51, 0x00, 0xe8, 0x5b, 0xe8, 0x5b, 0x33, 
560
+    0x2c, 0x65, 0x00, 0xa9, 0x01, 0x84, 0xa9, 0x01, 0x84, 0x1e, 0xa4, 0x35, 0x3d, 0x01, 0x0e, 0x00, 
561
+    0x3d, 0x01, 0x0e, 0x1e, 0x03, 0x76, 0x35, 0x3d, 0x01, 0x0e, 0x00, 0x3d, 0x01, 0x0e, 0x1e, 0x0c, 
562
+    0x05, 0x38, 0xa9, 0x01, 0x84, 0xa9, 0x01, 0x84, 0x18, 0x61, 0x33, 0xe8, 0x5b, 0xe8, 0x5b, 0x10, 
563
+    0x06, 0x1e, 0x75, 0x09, 0x30, 0xf2, 0x0a, 0x31, 0x03, 0x9c, 0x31, 0x8c, 0x30, 0x9e, 0x07, 0x1c, 
564
+    0xf2, 0x0a, 0x56, 0x09, 0x10, 0x06, 0x18, 0x75, 0x09, 0x56, 0xab, 0x02, 0x1c, 0x07, 0x6a, 0x1c, 
565
+    0x08, 0x0e, 0x30, 0x07, 0x6a, 0x31, 0xab, 0x02, 0x30, 0x09, 0x10, 
566
+};
567
+
568
+static const uint16_t mf_rlefont_phpRVS9jE_glyph_offsets_11[40] = {
569
+    0x0000, 0x0006, 0x000c, 0x000c, 0x000c, 0x000d, 0x0016, 0x0023, 
570
+    0x000c, 0x002d, 0x003c, 0x0047, 0x000c, 0x0053, 0x005b, 0x0065, 
571
+    0x000c, 0x000c, 0x000c, 0x007a, 0x000c, 0x000c, 0x000c, 0x000c, 
572
+    0x000c, 0x000c, 0x000c, 0x000c, 0x000c, 0x0085, 0x000c, 0x000c, 
573
+    0x000c, 0x000c, 0x000c, 0x000c, 0x000c, 0x000c, 0x00c0, 0x00d5, 
574
+};
575
+
576
+static const uint8_t mf_rlefont_phpRVS9jE_glyph_data_12[46] = {
577
+    0x0a, 0x69, 0x51, 0x48, 0x0b, 0x04, 0x45, 0x0a, 0x4f, 0x01, 0x02, 0x8d, 0x25, 0x51, 0x18, 0x07, 
578
+    0x25, 0x46, 0x31, 0x0b, 0x20, 0x0c, 0x3e, 0x4e, 0x32, 0x0b, 0x77, 0x0b, 0x3b, 0x46, 0x1c, 0x51, 
579
+    0x18, 0x07, 0x45, 0x0a, 0x4f, 0x01, 0x91, 0x0f, 0x3e, 0x9a, 0x48, 0x0b, 0x04, 0x10, 
580
+};
581
+
582
+static const uint16_t mf_rlefont_phpRVS9jE_glyph_offsets_12[1] = {
583
+    0x0000, 
584
+};
585
+
586
+static const uint8_t mf_rlefont_phpRVS9jE_glyph_data_13[26] = {
587
+    0x10, 0x52, 0x20, 0x08, 0x00, 0x07, 0x85, 0x9d, 0x0f, 0x0b, 0x01, 0x0a, 0x85, 0x9d, 0x0f, 0x49, 
588
+    0x05, 0x85, 0x9d, 0x85, 0x0c, 0x28, 0x9d, 0x73, 0x28, 0x10, 
589
+};
590
+
591
+static const uint16_t mf_rlefont_phpRVS9jE_glyph_offsets_13[1] = {
592
+    0x0000, 
593
+};
594
+
595
+static const uint8_t mf_rlefont_phpRVS9jE_glyph_data_14[360] = {
596
+    0x08, 0x40, 0xf9, 0xee, 0x0f, 0x64, 0x3b, 0x61, 0x55, 0x6f, 0x30, 0x61, 0x1c, 0xa1, 0x3e, 0x07, 
597
+    0x0d, 0x0e, 0x08, 0x98, 0x45, 0x07, 0x6a, 0x01, 0xa1, 0x0d, 0x45, 0x50, 0x35, 0x67, 0x0a, 0x45, 
598
+    0x3d, 0x63, 0x0f, 0x04, 0x45, 0x0a, 0x06, 0x8f, 0x0d, 0x0a, 0x27, 0x2c, 0x0a, 0x0e, 0x8c, 0x10, 
599
+    0x00, 0x0b, 0x69, 0x8d, 0x09, 0x45, 0x2c, 0x0e, 0x06, 0x3d, 0x3e, 0x06, 0x0b, 0x00, 0x0c, 0x06, 
600
+    0x3b, 0x0c, 0x05, 0x00, 0x49, 0x3e, 0x9e, 0x38, 0x6a, 0x45, 0x0a, 0x07, 0x38, 0x5a, 0x2b, 0x2c, 
601
+    0x0e, 0x01, 0x2c, 0x3d, 0x1d, 0x5a, 0x18, 0x09, 0x06, 0x27, 0x6a, 0x18, 0xf2, 0x1d, 0xa6, 0x1e, 
602
+    0x4f, 0x2b, 0x0a, 0x05, 0x1e, 0x90, 0x89, 0x67, 0x2a, 0x20, 0x43, 0x10, 0x0c, 0x4c, 0xef, 0x35, 
603
+    0x72, 0x41, 0x35, 0x72, 0x41, 0x35, 0x72, 0x0f, 0x1b, 0x72, 0x0f, 0x10, 0x0b, 0xd0, 0x0c, 0x97, 
604
+    0x20, 0x0c, 0x1d, 0xa0, 0x45, 0x63, 0x0e, 0x05, 0x30, 0x63, 0x0e, 0x05, 0x30, 0x63, 0x0e, 0x05, 
605
+    0x30, 0x63, 0x0e, 0x05, 0x30, 0x63, 0x0e, 0x05, 0x1c, 0x57, 0x02, 0x3b, 0x9b, 0x9c, 0x3e, 0x9b, 
606
+    0x9c, 0x3e, 0x9b, 0x9c, 0x3b, 0x03, 0x86, 0x31, 0x03, 0x86, 0x30, 0x86, 0x1c, 0x2f, 0x10, 0x0d, 
607
+    0x52, 0x75, 0x2f, 0x10, 0x03, 0x69, 0x84, 0x31, 0x8b, 0x01, 0x30, 0x0c, 0x06, 0x30, 0x61, 0x31, 
608
+    0x9b, 0x60, 0x30, 0x0c, 0x06, 0x30, 0x06, 0x0b, 0x31, 0x9b, 0x60, 0x30, 0x6d, 0x30, 0x51, 0x3e, 
609
+    0x2c, 0x65, 0x30, 0xa9, 0x10, 0x05, 0x79, 0x75, 0x4e, 0x10, 0x0a, 0x33, 0x34, 0x4d, 0x30, 0x6b, 
610
+    0x1c, 0x07, 0x07, 0x1c, 0x0c, 0x01, 0x30, 0x03, 0x0a, 0x45, 0x03, 0x02, 0x38, 0x09, 0x04, 0x25, 
611
+    0x7a, 0x0a, 0x00, 0x7b, 0x0c, 0x3e, 0x06, 0x3d, 0x05, 0x07, 0x27, 0x2c, 0x0e, 0x53, 0x5b, 0x3e, 
612
+    0x09, 0x0c, 0x02, 0x0a, 0x31, 0x74, 0x6e, 0x30, 0x0c, 0x0d, 0x1c, 0x07, 0x07, 0x10, 0x0d, 0x18, 
613
+    0x75, 0xe8, 0x0a, 0x01, 0xf2, 0x0e, 0x0b, 0x01, 0x1d, 0x0a, 0x09, 0x7e, 0x09, 0x0c, 0x07, 0xfb, 
614
+    0x3d, 0x00, 0x09, 0x0c, 0x00, 0x7b, 0x0e, 0x1d, 0x3d, 0x00, 0x0d, 0x09, 0x35, 0x19, 0x1d, 0xa4, 
615
+    0x01, 0x09, 0x0c, 0x09, 0x99, 0x0a, 0x0a, 0x1b, 0x2c, 0x0a, 0x0e, 0x0b, 0x01, 0x00, 0x7c, 0x5b, 
616
+    0x10, 0x08, 0x69, 0x07, 0x0e, 0x0b, 0x3b, 0x9b, 0x09, 0x1c, 0x07, 0x05, 0x1c, 0x54, 0x1c, 0x0c, 
617
+    0x02, 0x1c, 0x7d, 0x43, 0x1c, 0x4e, 0x33, 0x2c, 0x0e, 0x1c, 0x6b, 0x30, 0x9b, 0x0b, 0x30, 0x63, 
618
+    0x08, 0x1c, 0x08, 0x03, 0x31, 0x0b, 0x86, 0x10, 
619
+};
620
+
621
+static const uint16_t mf_rlefont_phpRVS9jE_glyph_offsets_14[42] = {
622
+    0x0000, 0x0030, 0x0030, 0x0030, 0x0031, 0x0030, 0x0030, 0x0030, 
623
+    0x0030, 0x0030, 0x0030, 0x0030, 0x0030, 0x006c, 0x0030, 0x007c, 
624
+    0x00af, 0x0030, 0x0030, 0x00b4, 0x0030, 0x0030, 0x0030, 0x00d5, 
625
+    0x00da, 0x0030, 0x0030, 0x0030, 0x010e, 0x0030, 0x0030, 0x0030, 
626
+    0x0030, 0x0030, 0x0030, 0x0030, 0x0030, 0x0030, 0x0030, 0x0030, 
627
+    0x0030, 0x0141, 
628
+};
629
+
630
+static const uint8_t mf_rlefont_phpRVS9jE_glyph_data_15[23] = {
631
+    0x0d, 0x18, 0x75, 0xdf, 0xfc, 0x01, 0x2b, 0x63, 0xac, 0x0e, 0x0b, 0x99, 0x01, 0x58, 0x1d, 0x0d, 
632
+    0x55, 0x02, 0x06, 0xac, 0x0e, 0xfc, 0x10, 
633
+};
634
+
635
+static const uint16_t mf_rlefont_phpRVS9jE_glyph_offsets_15[1] = {
636
+    0x0000, 
637
+};
638
+
639
+static const uint8_t mf_rlefont_phpRVS9jE_glyph_data_16[106] = {
640
+    0x0d, 0x1e, 0x5c, 0x5a, 0x30, 0x07, 0x65, 0x27, 0x77, 0x77, 0x3e, 0x98, 0x03, 0x31, 0x74, 0x06, 
641
+    0x3e, 0x77, 0x77, 0x27, 0x03, 0x86, 0x30, 0x0a, 0x07, 0x10, 0x00, 0x0d, 0x32, 0x5c, 0x7e, 0x7a, 
642
+    0x25, 0x9b, 0x07, 0xac, 0x6d, 0x03, 0x2b, 0x63, 0x7a, 0x0d, 0x09, 0x87, 0x45, 0x0f, 0x64, 0x31, 
643
+    0x63, 0x7a, 0x0d, 0x09, 0x87, 0x3b, 0x9b, 0x07, 0xac, 0x6d, 0x03, 0x31, 0x7e, 0x7a, 0x18, 0x95, 
644
+    0x2f, 0x10, 0x0d, 0x5c, 0x0d, 0x09, 0x55, 0x31, 0x03, 0x07, 0xac, 0x6d, 0x02, 0x31, 0x82, 0x7a, 
645
+    0x0d, 0x09, 0x04, 0x30, 0x58, 0x0f, 0x45, 0x82, 0x7a, 0x0d, 0x09, 0x05, 0x1d, 0x03, 0x07, 0xac, 
646
+    0x6d, 0x02, 0x45, 0x0d, 0x09, 0x55, 0x00, 0x1a, 0x2f, 0x10, 
647
+};
648
+
649
+static const uint16_t mf_rlefont_phpRVS9jE_glyph_offsets_16[6] = {
650
+    0x0000, 0x001a, 0x001a, 0x001a, 0x001b, 0x0042, 
651
+};
652
+
653
+static const uint8_t mf_rlefont_phpRVS9jE_glyph_data_17[72] = {
654
+    0x08, 0x22, 0x63, 0x04, 0x1c, 0x0b, 0x0b, 0x30, 0x26, 0x4f, 0x31, 0x6e, 0x90, 0x3e, 0x9b, 0x0b, 
655
+    0x35, 0x5b, 0x45, 0x09, 0x04, 0x35, 0x05, 0x09, 0x1d, 0x2c, 0x0c, 0x33, 0x0c, 0x01, 0x25, 0x8a, 
656
+    0x33, 0x05, 0x08, 0x25, 0x76, 0x33, 0x6b, 0x25, 0x5f, 0x33, 0x4a, 0x25, 0x6b, 0x33, 0x76, 0x45, 
657
+    0x09, 0x06, 0x35, 0x5e, 0x3e, 0xf2, 0x35, 0x0c, 0x02, 0x3b, 0x0a, 0x05, 0x05, 0x0a, 0x31, 0x44, 
658
+    0x6f, 0x31, 0x0b, 0x0b, 0x30, 0x63, 0x04, 0x10, 
659
+};
660
+
661
+static const uint16_t mf_rlefont_phpRVS9jE_glyph_offsets_17[1] = {
662
+    0x0000, 
663
+};
664
+
665
+static const uint8_t mf_rlefont_phpRVS9jE_glyph_data_18[47] = {
666
+    0x0a, 0x52, 0x44, 0x97, 0x4b, 0x27, 0x0c, 0x05, 0x35, 0x4b, 0x9d, 0x31, 0x0f, 0x20, 0x92, 0xc6, 
667
+    0x72, 0xc6, 0x72, 0xc6, 0x72, 0xc6, 0x72, 0x10, 0x0a, 0x52, 0x58, 0x77, 0x45, 0x6a, 0x35, 0x4b, 
668
+    0x9d, 0x72, 0x1e, 0x0f, 0x2a, 0x72, 0xc6, 0x72, 0xc6, 0x72, 0xc6, 0x72, 0xc6, 0x72, 0x10, 
669
+};
670
+
671
+static const uint16_t mf_rlefont_phpRVS9jE_glyph_offsets_18[2] = {
672
+    0x0000, 0x0018, 
673
+};
674
+
675
+static const struct mf_rlefont_char_range_s mf_rlefont_phpRVS9jE_char_ranges[] = {
676
+    {32, 95, mf_rlefont_phpRVS9jE_glyph_offsets_0, mf_rlefont_phpRVS9jE_glyph_data_0},
677
+    {160, 128, mf_rlefont_phpRVS9jE_glyph_offsets_1, mf_rlefont_phpRVS9jE_glyph_data_1},
678
+    {304, 2, mf_rlefont_phpRVS9jE_glyph_offsets_2, mf_rlefont_phpRVS9jE_glyph_data_2},
679
+    {321, 2, mf_rlefont_phpRVS9jE_glyph_offsets_3, mf_rlefont_phpRVS9jE_glyph_data_3},
680
+    {338, 16, mf_rlefont_phpRVS9jE_glyph_offsets_4, mf_rlefont_phpRVS9jE_glyph_data_4},
681
+    {376, 7, mf_rlefont_phpRVS9jE_glyph_offsets_5, mf_rlefont_phpRVS9jE_glyph_data_5},
682
+    {402, 1, mf_rlefont_phpRVS9jE_glyph_offsets_6, mf_rlefont_phpRVS9jE_glyph_data_6},
683
+    {710, 2, mf_rlefont_phpRVS9jE_glyph_offsets_7, mf_rlefont_phpRVS9jE_glyph_data_7},
684
+    {728, 6, mf_rlefont_phpRVS9jE_glyph_offsets_8, mf_rlefont_phpRVS9jE_glyph_data_8},
685
+    {937, 1, mf_rlefont_phpRVS9jE_glyph_offsets_9, mf_rlefont_phpRVS9jE_glyph_data_9},
686
+    {960, 1, mf_rlefont_phpRVS9jE_glyph_offsets_10, mf_rlefont_phpRVS9jE_glyph_data_10},
687
+    {8211, 40, mf_rlefont_phpRVS9jE_glyph_offsets_11, mf_rlefont_phpRVS9jE_glyph_data_11},
688
+    {8364, 1, mf_rlefont_phpRVS9jE_glyph_offsets_12, mf_rlefont_phpRVS9jE_glyph_data_12},
689
+    {8482, 1, mf_rlefont_phpRVS9jE_glyph_offsets_13, mf_rlefont_phpRVS9jE_glyph_data_13},
690
+    {8706, 42, mf_rlefont_phpRVS9jE_glyph_offsets_14, mf_rlefont_phpRVS9jE_glyph_data_14},
691
+    {8776, 1, mf_rlefont_phpRVS9jE_glyph_offsets_15, mf_rlefont_phpRVS9jE_glyph_data_15},
692
+    {8800, 6, mf_rlefont_phpRVS9jE_glyph_offsets_16, mf_rlefont_phpRVS9jE_glyph_data_16},
693
+    {9674, 1, mf_rlefont_phpRVS9jE_glyph_offsets_17, mf_rlefont_phpRVS9jE_glyph_data_17},
694
+    {64257, 2, mf_rlefont_phpRVS9jE_glyph_offsets_18, mf_rlefont_phpRVS9jE_glyph_data_18},
695
+};
696
+
697
+const struct mf_rlefont_s mf_rlefont_phpRVS9jE = {
698
+    {
699
+    "Bitstream Vera Sans Roman 16",
700
+    "phpRVS9jE",
701
+    23, /* width */
702
+    19, /* height */
703
+    3, /* min x advance */
704
+    21, /* max x advance */
705
+    3, /* baseline x */
706
+    15, /* baseline y */
707
+    19, /* line height */
708
+    0, /* flags */
709
+    63, /* fallback character */
710
+    &mf_rlefont_character_width,
711
+    &mf_rlefont_render_character,
712
+    },
713
+    4, /* version */
714
+    mf_rlefont_phpRVS9jE_dictionary_data,
715
+    mf_rlefont_phpRVS9jE_dictionary_offsets,
716
+    149, /* rle dict count */
717
+    232, /* total dict count */
718
+    19, /* char range count */
719
+    mf_rlefont_phpRVS9jE_char_ranges,
720
+};
721
+
722
+#ifdef MF_INCLUDED_FONTS
723
+/* List entry for searching fonts by name. */
724
+static const struct mf_font_list_s mf_rlefont_phpRVS9jE_listentry = {
725
+    MF_INCLUDED_FONTS,
726
+    (struct mf_font_s*)&mf_rlefont_phpRVS9jE
727
+};
728
+#undef MF_INCLUDED_FONTS
729
+#define MF_INCLUDED_FONTS (&mf_rlefont_phpRVS9jE_listentry)
730
+#endif
731
+
732
+
733
+/* End of automatically generated font definition for phpRVS9jE. */
734
+

+ 10 - 0
gfx.h

@@ -145,6 +145,13 @@
145 145
 	#ifndef GFX_USE_GFILE
146 146
 		#define GFX_USE_GFILE	FALSE
147 147
 	#endif
148
+	/**
149
+	 * @brief   GFX Translation Support API
150
+	 * @details	Defaults to FALSE
151
+	 */
152
+	#ifndef GFX_USE_GTRANS
153
+		#define GFX_USE_GTRANS	FALSE
154
+	#endif
148 155
 /** @} */
149 156
 
150 157
 /**
@@ -155,6 +162,7 @@
155 162
 #include "src/gdriver/gdriver_options.h"
156 163
 #include "src/gfile/gfile_options.h"
157 164
 #include "src/gmisc/gmisc_options.h"
165
+#include "src/gtrans/gtrans_options.h"
158 166
 #include "src/gqueue/gqueue_options.h"
159 167
 #include "src/gevent/gevent_options.h"
160 168
 #include "src/gtimer/gtimer_options.h"
@@ -181,6 +189,7 @@
181 189
 #include "src/gtimer/gtimer_rules.h"
182 190
 #include "src/gqueue/gqueue_rules.h"
183 191
 #include "src/gmisc/gmisc_rules.h"
192
+#include "src/gtrans/gtrans_rules.h"
184 193
 #include "src/gfile/gfile_rules.h"
185 194
 #include "src/gdriver/gdriver_rules.h"
186 195
 #include "src/gos/gos_rules.h"
@@ -192,6 +201,7 @@
192 201
 //#include "src/gdriver/gdriver.h"			// This module is only included by source that needs it.
193 202
 #include "src/gfile/gfile.h"
194 203
 #include "src/gmisc/gmisc.h"
204
+#include "src/gtrans/gtrans.h"
195 205
 #include "src/gqueue/gqueue.h"
196 206
 #include "src/gevent/gevent.h"
197 207
 #include "src/gtimer/gtimer.h"

+ 1 - 0
gfx.mk

@@ -21,6 +21,7 @@ else
21 21
 	include $(GFXLIB)/src/gaudio/gaudio.mk
22 22
 	include $(GFXLIB)/src/gmisc/gmisc.mk
23 23
 	include $(GFXLIB)/src/gfile/gfile.mk
24
+	include $(GFXLIB)/src/gtrans/gtrans.mk
24 25
 endif
25 26
 
26 27
 # Include the boards and drivers

+ 6 - 0
gfxconf.example.h

@@ -223,6 +223,12 @@
223 223
 //        #define GWIN_TABSET_TABHEIGHT                18
224 224
 
225 225
 
226
+///////////////////////////////////////////////////////////////////////////
227
+// GTRANS                                                                //
228
+///////////////////////////////////////////////////////////////////////////
229
+//#define GFX_USE_GTRANS                               FALSE
230
+
231
+
226 232
 ///////////////////////////////////////////////////////////////////////////
227 233
 // GEVENT                                                                //
228 234
 ///////////////////////////////////////////////////////////////////////////

+ 10 - 0
src/gfx.c

@@ -73,6 +73,10 @@ extern void _gosDeinit(void);
73 73
 	extern void _gmiscInit(void);
74 74
 	extern void _gmiscDeinit(void);
75 75
 #endif
76
+#if GFX_USE_GTRANS
77
+	extern void _gtransInit(void);
78
+	extern void _gtransDeinit(void);
79
+#endif
76 80
 
77 81
 void gfxInit(void)
78 82
 {
@@ -96,6 +100,9 @@ void gfxInit(void)
96 100
 	#if GFX_USE_GMISC
97 101
 		_gmiscInit();
98 102
 	#endif
103
+	#if GFX_USE_GTRANS
104
+		_gtransInit();
105
+	#endif
99 106
 	#if GFX_USE_GEVENT
100 107
 		_geventInit();
101 108
 	#endif
@@ -159,6 +166,9 @@ void gfxDeinit(void)
159 166
 	#if GFX_USE_GEVENT
160 167
 		_geventDeinit();
161 168
 	#endif
169
+	#if GFX_USE_GTRANS
170
+		_gtransDeinit();
171
+	#endif
162 172
 	#if GFX_USE_GMISC
163 173
 		_gmiscDeinit();
164 174
 	#endif

+ 1 - 0
src/gfx_mk.c

@@ -18,3 +18,4 @@
18 18
 #include "gaudio/gaudio_mk.c"
19 19
 #include "gmisc/gmisc_mk.c"
20 20
 #include "gfile/gfile_mk.c"
21
+#include "gtrans/gtrans_mk.c"

+ 77 - 0
src/gtrans/gtrans.c

@@ -0,0 +1,77 @@
1
+/*
2
+ * This file is subject to the terms of the GFX License. If a copy of
3
+ * the license was not distributed with this file, you can obtain one at:
4
+ *
5
+ *              http://ugfx.org/license.html
6
+ */
7
+
8
+#include <string.h>
9
+#include "../../gfx.h"
10
+
11
+#if GFX_USE_GTRANS
12
+
13
+static const transTable* _languageBase;
14
+static const transTable* _languageCurrent;
15
+
16
+void _gtransInit(void)
17
+{
18
+	_languageBase = 0;
19
+	_languageCurrent = 0;
20
+}
21
+
22
+void _gtransDeinit(void)
23
+{
24
+}
25
+
26
+const char* gtransString(const char* string)
27
+{
28
+	// Find the index of the specified string in the base language table
29
+	size_t i = 0;
30
+	while (1) {
31
+		// Prevent overflow
32
+		if (i >= _languageBase->numEntries) {
33
+			return string;
34
+		}
35
+
36
+		// Check if we found the string
37
+		if (strcmp(string, _languageBase->strings[i]) == 0) {
38
+			break;
39
+		}
40
+
41
+		// Otherwise keep going
42
+		i++;
43
+	}
44
+
45
+	// Make sure that the index exists in the current language table
46
+	if (i >= _languageCurrent->numEntries) {
47
+		return string;
48
+	}
49
+
50
+	// Return the translated string
51
+	return _languageCurrent->strings[i];
52
+}
53
+
54
+const char* gtransIndex(unsigned index)
55
+{
56
+	if (!_languageCurrent) {
57
+		return 0;
58
+	}
59
+
60
+	if (index >= _languageCurrent->numEntries) {
61
+		return 0;
62
+	}
63
+
64
+	return _languageCurrent->strings[index];
65
+}
66
+
67
+void gtransSetBaseLanguage(const transTable* const translation)
68
+{
69
+	_languageBase = translation;
70
+}
71
+
72
+void gtransSetLanguage(const transTable* const translation)
73
+{
74
+	_languageCurrent = translation;
75
+}
76
+
77
+#endif /* GFX_USE_GTRANS */

+ 94 - 0
src/gtrans/gtrans.h

@@ -0,0 +1,94 @@
1
+/*
2
+ * This file is subject to the terms of the GFX License. If a copy of
3
+ * the license was not distributed with this file, you can obtain one at:
4
+ *
5
+ *              http://ugfx.org/license.html
6
+ */
7
+
8
+/**
9
+ * @file    src/gtrans/gtrans.h
10
+ *
11
+ * @addtogroup GTRANS
12
+ *
13
+ * @brief	Module that allows changing the language of an application dynamically during run-time.
14
+ *
15
+ * @{
16
+ */
17
+
18
+#ifndef _TRANS_H
19
+#define _TRANS_H
20
+
21
+#include "../../gfx.h"
22
+
23
+#if GFX_USE_GTRANS || defined(__DOXYGEN__)
24
+
25
+/**
26
+ * @struct transTable
27
+ * @brief A table containing translated strings.
28
+ */
29
+typedef struct transTable {
30
+	unsigned numEntries;    /**< The number of strings that this table contains */
31
+	const char** strings;	/**< The translated strings */
32
+} transTable;
33
+
34
+#ifdef __cplusplus
35
+extern "C" {
36
+#endif
37
+
38
+/**
39
+ * @brief A wrapper macro to make writing and reading translatable applications easier.
40
+ */
41
+#define gt(str) gtransString(str)
42
+
43
+/**
44
+ * @brief Get the string of the current language specified by the string of the base language.
45
+ *
46
+ * @details This function will return the string of the current language that corresponds to
47
+ *			the specified string in the base language.
48
+ * @details This function uses strcmp() internally to compare strings.
49
+ *
50
+ * @param[in] string The string to translate.
51
+ *
52
+ * @return The corresponding string of the current language or the string passed as a parameter if it doesn't exist.
53
+ */
54
+const char* gtransString(const char* string);
55
+
56
+/**
57
+ * @brief Get the string at the specified index position of the current language.
58
+ *
59
+ * @details Getting translation strings is a lot faster using the index as an accessor rather
60
+ *          than the string in the base language.
61
+ *
62
+ * @param[in] index The index of the string in the current language translation table.
63
+ *
64
+ * @return The string at the given index of the current language or 0 if it doesn't exist.
65
+ */
66
+const char* gtransIndex(unsigned index);
67
+
68
+/**
69
+ * @brief Set the base language.
70
+ *
71
+ * @details A translatable application needs to have a base language. All translations will
72
+ *          be relative to this base language.
73
+ *
74
+ * @param[in] translation The translation table
75
+ */
76
+void gtransSetBaseLanguage(const transTable* const translation);
77
+
78
+/**
79
+ * @brief Set the current language.
80
+ *
81
+ * @details All translations will refer to the current language set by calling this function.
82
+ *
83
+ * @param[in] translation The translation table
84
+ */
85
+void gtransSetLanguage(const transTable* const translation);
86
+
87
+#ifdef __cplusplus
88
+}
89
+#endif
90
+
91
+#endif /* GFX_USE_GTRANS */
92
+
93
+#endif /* _TRANS_H */
94
+/** @} */

+ 6 - 0
src/gtrans/gtrans.mk

@@ -0,0 +1,6 @@
1
+# This file is subject to the terms of the GFX License. If a copy of
2
+# the license was not distributed with this file, you can obtain one at:
3
+#
4
+#              http://ugfx.org/license.html
5
+
6
+GFXSRC +=   $(GFXLIB)/src/gtrans/gtrans.c

+ 8 - 0
src/gtrans/gtrans_mk.c

@@ -0,0 +1,8 @@
1
+/*
2
+ * This file is subject to the terms of the GFX License. If a copy of
3
+ * the license was not distributed with this file, you can obtain one at:
4
+ *
5
+ *              http://ugfx.org/license.html
6
+ */
7
+
8
+#include "gtrans.c"

+ 21 - 0
src/gtrans/gtrans_options.h

@@ -0,0 +1,21 @@
1
+/*
2
+ * This file is subject to the terms of the GFX License. If a copy of
3
+ * the license was not distributed with this file, you can obtain one at:
4
+ *
5
+ *              http://ugfx.org/license.html
6
+ */
7
+
8
+/**
9
+ * @file    src/gtrans/gtrans_options.h
10
+ *
11
+ * @addtogroup GTRANS
12
+ * @{
13
+ */
14
+
15
+#ifndef _GTRANS_OPTIONS_H
16
+#define _GTRANS_OPTIONS_H
17
+
18
+
19
+
20
+#endif /* _GTRANS_OPTIONS_H */
21
+/** @} */

+ 22 - 0
src/gtrans/gtrans_rules.h

@@ -0,0 +1,22 @@
1
+/*
2
+ * This file is subject to the terms of the GFX License. If a copy of
3
+ * the license was not distributed with this file, you can obtain one at:
4
+ *
5
+ *              http://ugfx.org/license.html
6
+ */
7
+
8
+/**
9
+ * @file    src/gtrans/gtrans_rules.h
10
+ *
11
+ * @addtogroup GTRANS
12
+ * @{
13
+ */
14
+
15
+#ifndef _GTRANS_RULES_H
16
+#define _GTRANS_RULES_H
17
+
18
+#if GFX_USE_GTRANS
19
+#endif
20
+
21
+#endif /* _GTRANS_RULES_H */
22
+/** @} */