/* !!! WARNING !!! DON'T CHANGE ORDER OF CHARS */ struct codepage_map codepage_utf8west_array[] = { { 0x000003, 155 }, // max size , char count { 0x00003f, 0 }, { 0x00003f, 0 }, { 0x00003f, 0 }, { 0x00003f, 0 }, { 0x00003f, 0 }, { 0x00c280, 1 }, { 0x00c281, 2 }, { 0x00c282, 3 }, { 0x00c283, 4 }, { 0x00c284, 5 }, { 0x00c285, 6 }, { 0x00c286, 7 }, { 0x00c287, 8 }, { 0x00c288, 9 }, { 0x00c289, 10 }, { 0x00c28a, 11 }, { 0x00c28b, 12 }, { 0x00c28c, 13 }, { 0x00c28d, 14 }, { 0x00c28e, 15 }, { 0x00c28f, 16 }, { 0x00c290, 17 }, { 0x00c291, 18 }, { 0x00c292, 19 }, { 0x00c293, 20 }, { 0x00c294, 21 }, { 0x00c295, 22 }, { 0x00c296, 23 }, { 0x00c297, 24 }, { 0x00c298, 25 }, { 0x00c299, 26 }, { 0x00c29a, 27 }, { 0x00c29b, 28 }, { 0x00c29c, 29 }, { 0x00c29d, 30 }, { 0x00c29e, 31 }, { 0x00c29f, 32 }, { 0x00c2a0, 33 }, { 0x00c2a1, 34 }, { 0x00c2a2, 35 }, { 0x00c2a3, 36 }, { 0x00c2a4, 37 }, { 0x00c2a5, 38 }, { 0x00c2a6, 39 }, { 0x00c2a7, 40 }, { 0x00c2a8, 41 }, { 0x00c2a9, 42 }, { 0x00c2aa, 43 }, { 0x00c2ab, 44 }, { 0x00c2ac, 45 }, { 0x00c2ad, 46 }, { 0x00c2ae, 47 }, { 0x00c2af, 48 }, { 0x00c2b0, 49 }, { 0x00c2b1, 50 }, { 0x00c2b2, 51 }, { 0x00c2b3, 52 }, { 0x00c2b4, 53 }, { 0x00c2b5, 54 }, { 0x00c2b6, 55 }, { 0x00c2b7, 56 }, { 0x00c2b8, 57 }, { 0x00c2b9, 58 }, { 0x00c2ba, 59 }, { 0x00c2bb, 60 }, { 0x00c2bc, 61 }, { 0x00c2bd, 62 }, { 0x00c2be, 63 }, { 0x00c2bf, 64 }, { 0x00c380, 65 }, { 0x00c381, 66 }, { 0x00c382, 67 }, { 0x00c383, 68 }, { 0x00c384, 69 }, { 0x00c385, 70 }, { 0x00c386, 71 }, { 0x00c387, 72 }, { 0x00c388, 73 }, { 0x00c389, 74 }, { 0x00c38a, 75 }, { 0x00c38b, 76 }, { 0x00c38c, 77 }, { 0x00c38d, 78 }, { 0x00c38e, 79 }, { 0x00c38f, 80 }, { 0x00c390, 81 }, { 0x00c391, 82 }, { 0x00c392, 83 }, { 0x00c393, 84 }, { 0x00c394, 85 }, { 0x00c395, 86 }, { 0x00c396, 87 }, { 0x00c397, 88 }, { 0x00c398, 89 }, { 0x00c399, 90 }, { 0x00c39a, 91 }, { 0x00c39b, 92 }, { 0x00c39c, 93 }, { 0x00c39d, 94 }, { 0x00c39e, 95 }, { 0x00c39f, 96 }, { 0x00c3a0, 97 }, { 0x00c3a1, 98 }, { 0x00c3a2, 99 }, { 0x00c3a3, 100 }, { 0x00c3a4, 101 }, { 0x00c3a5, 102 }, { 0x00c3a6, 103 }, { 0x00c3a7, 104 }, { 0x00c3a8, 105 }, { 0x00c3a9, 106 }, { 0x00c3aa, 107 }, { 0x00c3ab, 108 }, { 0x00c3ac, 109 }, { 0x00c3ad, 110 }, { 0x00c3ae, 111 }, { 0x00c3af, 112 }, { 0x00c3b0, 113 }, { 0x00c3b1, 114 }, { 0x00c3b2, 115 }, { 0x00c3b3, 116 }, { 0x00c3b4, 117 }, { 0x00c3b5, 118 }, { 0x00c3b6, 119 }, { 0x00c3b7, 120 }, { 0x00c3b8, 121 }, { 0x00c3b9, 122 }, { 0x00c3ba, 123 }, { 0x00c3bb, 124 }, { 0x00c3bc, 125 }, { 0x00c3bd, 126 }, { 0x00c3be, 127 }, { 0x00c3bf, 128 }, { 0x00c592, 129 }, { 0x00c593, 130 }, { 0x00c5a0, 131 }, { 0x00c5a1, 132 }, { 0x00c5b8, 133 }, { 0x00c5bd, 134 }, { 0x00c5be, 135 }, { 0x00c692, 136 }, { 0x00cb86, 137 }, { 0x00cb9c, 138 }, { 0xe28093, 139 }, { 0xe28094, 140 }, { 0xe28098, 141 }, { 0xe28099, 142 }, { 0xe2809a, 143 }, { 0xe2809c, 144 }, { 0xe2809d, 145 }, { 0xe2809e, 146 }, { 0xe280a0, 147 }, { 0xe280a1, 148 }, { 0xe280a2, 149 }, { 0xe280a6, 150 }, { 0xe280b0, 151 }, { 0xe280b9, 152 }, { 0xe280ba, 153 }, { 0xe282ac, 154 }, { 0xe284a2, 155 }, { 0x000000, 0 } }; struct codepage_map codepage_iso1_array[] = { { 0x0001, 128 }, // max size , char count for control { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x0080, 1 }, { 0x0081, 2 }, { 0x0082, 3 }, { 0x0083, 4 }, { 0x0084, 5 }, { 0x0085, 6 }, { 0x0086, 7 }, { 0x0087, 8 }, { 0x0088, 9 }, { 0x0089, 10 }, { 0x008a, 11 }, { 0x008b, 12 }, { 0x008c, 13 }, { 0x008d, 14 }, { 0x008e, 15 }, { 0x008f, 16 }, { 0x0090, 17 }, { 0x0091, 18 }, { 0x0092, 19 }, { 0x0093, 20 }, { 0x0094, 21 }, { 0x0095, 22 }, { 0x0096, 23 }, { 0x0097, 24 }, { 0x0098, 25 }, { 0x0099, 26 }, { 0x009a, 27 }, { 0x009b, 28 }, { 0x009c, 29 }, { 0x009d, 30 }, { 0x009e, 31 }, { 0x009f, 32 }, { 0x00a0, 33 }, { 0x00a1, 34 }, { 0x00a2, 35 }, { 0x00a3, 36 }, { 0x00a4, 37 }, { 0x00a5, 38 }, { 0x00a6, 39 }, { 0x00a7, 40 }, { 0x00a8, 41 }, { 0x00a9, 42 }, { 0x00aa, 43 }, { 0x00ab, 44 }, { 0x00ac, 45 }, { 0x00ad, 46 }, { 0x00ae, 47 }, { 0x00af, 48 }, { 0x00b0, 49 }, { 0x00b1, 50 }, { 0x00b2, 51 }, { 0x00b3, 52 }, { 0x00b4, 53 }, { 0x00b5, 54 }, { 0x00b6, 55 }, { 0x00b7, 56 }, { 0x00b8, 57 }, { 0x00b9, 58 }, { 0x00ba, 59 }, { 0x00bb, 60 }, { 0x00bc, 61 }, { 0x00bd, 62 }, { 0x00be, 63 }, { 0x00bf, 64 }, { 0x00c0, 65 }, { 0x00c1, 66 }, { 0x00c2, 67 }, { 0x00c3, 68 }, { 0x00c4, 69 }, { 0x00c5, 70 }, { 0x00c6, 71 }, { 0x00c7, 72 }, { 0x00c8, 73 }, { 0x00c9, 74 }, { 0x00ca, 75 }, { 0x00cb, 76 }, { 0x00cc, 77 }, { 0x00cd, 78 }, { 0x00ce, 79 }, { 0x00cf, 80 }, { 0x00d0, 81 }, { 0x00d1, 82 }, { 0x00d2, 83 }, { 0x00d3, 84 }, { 0x00d4, 85 }, { 0x00d5, 86 }, { 0x00d6, 87 }, { 0x00d7, 88 }, { 0x00d8, 89 }, { 0x00d9, 90 }, { 0x00da, 91 }, { 0x00db, 92 }, { 0x00dc, 93 }, { 0x00dd, 94 }, { 0x00de, 95 }, { 0x00df, 96 }, { 0x00e0, 97 }, { 0x00e1, 98 }, { 0x00e2, 99 }, { 0x00e3, 100 }, { 0x00e4, 101 }, { 0x00e5, 102 }, { 0x00e6, 103 }, { 0x00e7, 104 }, { 0x00e8, 105 }, { 0x00e9, 106 }, { 0x00ea, 107 }, { 0x00eb, 108 }, { 0x00ec, 109 }, { 0x00ed, 110 }, { 0x00ee, 111 }, { 0x00ef, 112 }, { 0x00f0, 113 }, { 0x00f1, 114 }, { 0x00f2, 115 }, { 0x00f3, 116 }, { 0x00f4, 117 }, { 0x00f5, 118 }, { 0x00f6, 119 }, { 0x00f7, 120 }, { 0x00f8, 121 }, { 0x00f9, 122 }, { 0x00fa, 123 }, { 0x00fb, 124 }, { 0x00fc, 125 }, { 0x00fd, 126 }, { 0x00fe, 127 }, { 0x00ff, 128 }, { 0x0000, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x0000, 0 } }; struct codepage_map codepage_iso15_array[] = { { 0x0001, 128 }, // max size , char count for control { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x0080, 1 }, { 0x0081, 2 }, { 0x0082, 3 }, { 0x0083, 4 }, { 0x0084, 5 }, { 0x0085, 6 }, { 0x0086, 7 }, { 0x0087, 8 }, { 0x0088, 9 }, { 0x0089, 10 }, { 0x008a, 11 }, { 0x008b, 12 }, { 0x008c, 13 }, { 0x008d, 14 }, { 0x008e, 15 }, { 0x008f, 16 }, { 0x0090, 17 }, { 0x0091, 18 }, { 0x0092, 19 }, { 0x0093, 20 }, { 0x0094, 21 }, { 0x0095, 22 }, { 0x0096, 23 }, { 0x0097, 24 }, { 0x0098, 25 }, { 0x0099, 26 }, { 0x009a, 27 }, { 0x009b, 28 }, { 0x009c, 29 }, { 0x009d, 30 }, { 0x009e, 31 }, { 0x009f, 32 }, { 0x00a0, 33 }, { 0x00a1, 34 }, { 0x00a2, 35 }, { 0x00a3, 36 }, { 0x003f, 0 }, { 0x00a5, 38 }, { 0x00a6, 39 }, { 0x00a7, 40 }, { 0x00a8, 41 }, { 0x00a9, 42 }, { 0x00aa, 43 }, { 0x00ab, 44 }, { 0x00ac, 45 }, { 0x00ad, 46 }, { 0x00ae, 47 }, { 0x00af, 48 }, { 0x00b0, 49 }, { 0x00b1, 50 }, { 0x00b2, 51 }, { 0x00b3, 52 }, { 0x00b4, 53 }, { 0x00b5, 54 }, { 0x00b6, 55 }, { 0x00b7, 56 }, { 0x00b8, 57 }, { 0x00b9, 58 }, { 0x00ba, 59 }, { 0x00bb, 60 }, { 0x00bc, 61 }, { 0x00bd, 62 }, { 0x00be, 63 }, { 0x00bf, 64 }, { 0x00c0, 65 }, { 0x00c1, 66 }, { 0x00c2, 67 }, { 0x00c3, 68 }, { 0x00c4, 69 }, { 0x00c5, 70 }, { 0x00c6, 71 }, { 0x00c7, 72 }, { 0x00c8, 73 }, { 0x00c9, 74 }, { 0x00ca, 75 }, { 0x00cb, 76 }, { 0x00cc, 77 }, { 0x00cd, 78 }, { 0x00ce, 79 }, { 0x00cf, 80 }, { 0x00d0, 81 }, { 0x00d1, 82 }, { 0x00d2, 83 }, { 0x00d3, 84 }, { 0x00d4, 85 }, { 0x00d5, 86 }, { 0x00d6, 87 }, { 0x00d7, 88 }, { 0x00d8, 89 }, { 0x00d9, 90 }, { 0x00da, 91 }, { 0x00db, 92 }, { 0x00dc, 93 }, { 0x00dd, 94 }, { 0x00de, 95 }, { 0x00df, 96 }, { 0x00e0, 97 }, { 0x00e1, 98 }, { 0x00e2, 99 }, { 0x00e3, 100 }, { 0x00e4, 101 }, { 0x00e5, 102 }, { 0x00e6, 103 }, { 0x00e7, 104 }, { 0x00e8, 105 }, { 0x00e9, 106 }, { 0x00ea, 107 }, { 0x00eb, 108 }, { 0x00ec, 109 }, { 0x00ed, 110 }, { 0x00ee, 111 }, { 0x00ef, 112 }, { 0x00f0, 113 }, { 0x00f1, 114 }, { 0x00f2, 115 }, { 0x00f3, 116 }, { 0x00f4, 117 }, { 0x00f5, 118 }, { 0x00f6, 119 }, { 0x00f7, 120 }, { 0x00f8, 121 }, { 0x00f9, 122 }, { 0x00fa, 123 }, { 0x00fb, 124 }, { 0x00fc, 125 }, { 0x00fd, 126 }, { 0x00fe, 127 }, { 0x00ff, 128 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x00a4, 37 }, { 0x003f, 0 }, { 0x0000, 0 } }; struct codepage_map codepage_win1252_array[] = { { 0x0001, 128 }, // max size , char count for control { 0x0081, 2 }, { 0x008d, 14 }, { 0x008f, 16 }, { 0x0090, 17 }, { 0x009d, 30 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x003f, 0 }, { 0x00a0, 33 }, { 0x00a1, 34 }, { 0x00a2, 35 }, { 0x00a3, 36 }, { 0x00a4, 37 }, { 0x00a5, 38 }, { 0x00a6, 39 }, { 0x00a7, 40 }, { 0x00a8, 41 }, { 0x00a9, 42 }, { 0x00aa, 43 }, { 0x00ab, 44 }, { 0x00ac, 45 }, { 0x00ad, 46 }, { 0x00ae, 47 }, { 0x00af, 48 }, { 0x00b0, 49 }, { 0x00b1, 50 }, { 0x00b2, 51 }, { 0x00b3, 52 }, { 0x00b4, 53 }, { 0x00b5, 54 }, { 0x00b6, 55 }, { 0x00b7, 56 }, { 0x00b8, 57 }, { 0x00b9, 58 }, { 0x00ba, 59 }, { 0x00bb, 60 }, { 0x00bc, 61 }, { 0x00bd, 62 }, { 0x00be, 63 }, { 0x00bf, 64 }, { 0x00c0, 65 }, { 0x00c1, 66 }, { 0x00c2, 67 }, { 0x00c3, 68 }, { 0x00c4, 69 }, { 0x00c5, 70 }, { 0x00c6, 71 }, { 0x00c7, 72 }, { 0x00c8, 73 }, { 0x00c9, 74 }, { 0x00ca, 75 }, { 0x00cb, 76 }, { 0x00cc, 77 }, { 0x00cd, 78 }, { 0x00ce, 79 }, { 0x00cf, 80 }, { 0x00d0, 81 }, { 0x00d1, 82 }, { 0x00d2, 83 }, { 0x00d3, 84 }, { 0x00d4, 85 }, { 0x00d5, 86 }, { 0x00d6, 87 }, { 0x00d7, 88 }, { 0x00d8, 89 }, { 0x00d9, 90 }, { 0x00da, 91 }, { 0x00db, 92 }, { 0x00dc, 93 }, { 0x00dd, 94 }, { 0x00de, 95 }, { 0x00df, 96 }, { 0x00e0, 97 }, { 0x00e1, 98 }, { 0x00e2, 99 }, { 0x00e3, 100 }, { 0x00e4, 101 }, { 0x00e5, 102 }, { 0x00e6, 103 }, { 0x00e7, 104 }, { 0x00e8, 105 }, { 0x00e9, 106 }, { 0x00ea, 107 }, { 0x00eb, 108 }, { 0x00ec, 109 }, { 0x00ed, 110 }, { 0x00ee, 111 }, { 0x00ef, 112 }, { 0x00f0, 113 }, { 0x00f1, 114 }, { 0x00f2, 115 }, { 0x00f3, 116 }, { 0x00f4, 117 }, { 0x00f5, 118 }, { 0x00f6, 119 }, { 0x00f7, 120 }, { 0x00f8, 121 }, { 0x00f9, 122 }, { 0x00fa, 123 }, { 0x00fb, 124 }, { 0x00fc, 125 }, { 0x00fd, 126 }, { 0x00fe, 127 }, { 0x00ff, 128 }, { 0x008c, 13 }, { 0x009c, 29 }, { 0x008a, 11 }, { 0x009a, 27 }, { 0x009f, 32 }, { 0x008e, 15 }, { 0x009e, 31 }, { 0x0083, 4 }, { 0x0088, 9 }, { 0x0098, 25 }, { 0x0096, 23 }, { 0x0097, 24 }, { 0x0091, 18 }, { 0x0092, 19 }, { 0x0082, 3 }, { 0x0093, 20 }, { 0x0094, 21 }, { 0x0084, 5 }, { 0x0086, 7 }, { 0x0087, 8 }, { 0x0095, 22 }, { 0x0085, 6 }, { 0x0089, 10 }, { 0x008b, 12 }, { 0x009b, 28 }, { 0x0080, 1 }, { 0x0099, 26 }, { 0x0000, 0 } };