1------------------------------------------------------------------------------
2--                                                                          --
3--                         GNAT RUN-TIME COMPONENTS                         --
4--                                                                          --
5--           A D A . S T R I N G S . M A P S . C O N S T A N T S            --
6--                                                                          --
7--                                 S p e c                                  --
8--                                                                          --
9--          Copyright (C) 1992-2009, Free Software Foundation, Inc.         --
10--                                                                          --
11-- This specification is derived from the Ada Reference Manual for use with --
12-- GNAT. The copyright notice above, and the license provisions that follow --
13-- apply solely to the  contents of the part following the private keyword. --
14--                                                                          --
15-- GNAT is free software;  you can  redistribute it  and/or modify it under --
16-- terms of the  GNU General Public License as published  by the Free Soft- --
17-- ware  Foundation;  either version 3,  or (at your option) any later ver- --
18-- sion.  GNAT is distributed in the hope that it will be useful, but WITH- --
19-- OUT ANY WARRANTY;  without even the  implied warranty of MERCHANTABILITY --
20-- or FITNESS FOR A PARTICULAR PURPOSE.                                     --
21--                                                                          --
22-- As a special exception under Section 7 of GPL version 3, you are granted --
23-- additional permissions described in the GCC Runtime Library Exception,   --
24-- version 3.1, as published by the Free Software Foundation.               --
25--                                                                          --
26-- You should have received a copy of the GNU General Public License and    --
27-- a copy of the GCC Runtime Library Exception along with this program;     --
28-- see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see    --
29-- <http://www.gnu.org/licenses/>.                                          --
30--                                                                          --
31-- GNAT was originally developed  by the GNAT team at  New York University. --
32-- Extensive contributions were provided by Ada Core Technologies Inc.      --
33--                                                                          --
34------------------------------------------------------------------------------
35
36with Ada.Characters.Latin_1;
37
38package Ada.Strings.Maps.Constants is
39   pragma Preelaborate;
40   pragma Pure_05;
41   --  In accordance with Ada 2005 AI-362
42
43   Control_Set           : constant Character_Set;
44   Graphic_Set           : constant Character_Set;
45   Letter_Set            : constant Character_Set;
46   Lower_Set             : constant Character_Set;
47   Upper_Set             : constant Character_Set;
48   Basic_Set             : constant Character_Set;
49   Decimal_Digit_Set     : constant Character_Set;
50   Hexadecimal_Digit_Set : constant Character_Set;
51   Alphanumeric_Set      : constant Character_Set;
52   Special_Set           : constant Character_Set;
53   ISO_646_Set           : constant Character_Set;
54
55   Lower_Case_Map        : constant Character_Mapping;
56   --  Maps to lower case for letters, else identity
57
58   Upper_Case_Map        : constant Character_Mapping;
59   --  Maps to upper case for letters, else identity
60
61   Basic_Map             : constant Character_Mapping;
62   --  Maps to basic letters for letters, else identity
63
64private
65   package L renames Ada.Characters.Latin_1;
66
67   Control_Set               : constant Character_Set :=
68     (L.NUL                  ..  L.US                  => True,
69      L.DEL                  ..  L.APC                 => True,
70      others                                           => False);
71
72   Graphic_Set               : constant Character_Set :=
73     (L.Space                ..  L.Tilde               => True,
74      L.No_Break_Space       ..  L.LC_Y_Diaeresis      => True,
75      others                                           => False);
76
77   Letter_Set                : constant Character_Set :=
78     ('A'                    .. 'Z'                    => True,
79      L.LC_A                 ..  L.LC_Z                => True,
80      L.UC_A_Grave           ..  L.UC_O_Diaeresis      => True,
81      L.UC_O_Oblique_Stroke  ..  L.LC_O_Diaeresis      => True,
82      L.LC_O_Oblique_Stroke  ..  L.LC_Y_Diaeresis      => True,
83      others                                           => False);
84
85   Lower_Set                 : constant Character_Set :=
86     (L.LC_A                 ..  L.LC_Z                => True,
87      L.LC_German_Sharp_S    ..  L.LC_O_Diaeresis      => True,
88      L.LC_O_Oblique_Stroke  ..  L.LC_Y_Diaeresis      => True,
89      others                                           => False);
90
91   Upper_Set                 : constant Character_Set :=
92     ('A'                    ..  'Z'                   => True,
93      L.UC_A_Grave           ..  L.UC_O_Diaeresis      => True,
94      L.UC_O_Oblique_Stroke  ..  L.UC_Icelandic_Thorn  => True,
95      others                                           => False);
96
97   Basic_Set                 : constant Character_Set :=
98     ('A'                    .. 'Z'                    => True,
99      L.LC_A                 ..  L.LC_Z                => True,
100      L.UC_AE_Diphthong      ..  L.UC_AE_Diphthong     => True,
101      L.LC_AE_Diphthong      ..  L.LC_AE_Diphthong     => True,
102      L.LC_German_Sharp_S    ..  L.LC_German_Sharp_S   => True,
103      L.UC_Icelandic_Thorn   ..  L.UC_Icelandic_Thorn  => True,
104      L.LC_Icelandic_Thorn   ..  L.LC_Icelandic_Thorn  => True,
105      L.UC_Icelandic_Eth     ..  L.UC_Icelandic_Eth    => True,
106      L.LC_Icelandic_Eth     ..  L.LC_Icelandic_Eth    => True,
107      others                                           => False);
108
109   Decimal_Digit_Set         : constant Character_Set :=
110     ('0'                    ..  '9'                   => True,
111      others                                           => False);
112
113   Hexadecimal_Digit_Set     : constant Character_Set :=
114     ('0'                    ..  '9'                   => True,
115      'A'                    ..  'F'                   => True,
116      L.LC_A                 ..  L.LC_F                => True,
117      others                                           => False);
118
119   Alphanumeric_Set          : constant Character_Set :=
120     ('0'                    ..  '9'                   => True,
121      'A'                    ..  'Z'                   => True,
122      L.LC_A                 ..  L.LC_Z                => True,
123      L.UC_A_Grave           ..  L.UC_O_Diaeresis      => True,
124      L.UC_O_Oblique_Stroke  ..  L.LC_O_Diaeresis      => True,
125      L.LC_O_Oblique_Stroke  ..  L.LC_Y_Diaeresis      => True,
126      others                                           => False);
127
128   Special_Set               : constant Character_Set :=
129     (L.Space                ..  L.Solidus             => True,
130      L.Colon                ..  L.Commercial_At       => True,
131      L.Left_Square_Bracket  ..  L.Grave               => True,
132      L.Left_Curly_Bracket   ..  L.Tilde               => True,
133      L.No_Break_Space       ..  L.Inverted_Question   => True,
134      L.Multiplication_Sign  ..  L.Multiplication_Sign => True,
135      L.Division_Sign        ..  L.Division_Sign       => True,
136      others                                           => False);
137
138   ISO_646_Set               : constant Character_Set :=
139     (L.NUL                  ..  L.DEL                 => True,
140      others                                           => False);
141
142   Lower_Case_Map : constant Character_Mapping :=
143     (L.NUL                         &  -- NUL                             0
144      L.SOH                         &  -- SOH                             1
145      L.STX                         &  -- STX                             2
146      L.ETX                         &  -- ETX                             3
147      L.EOT                         &  -- EOT                             4
148      L.ENQ                         &  -- ENQ                             5
149      L.ACK                         &  -- ACK                             6
150      L.BEL                         &  -- BEL                             7
151      L.BS                          &  -- BS                              8
152      L.HT                          &  -- HT                              9
153      L.LF                          &  -- LF                             10
154      L.VT                          &  -- VT                             11
155      L.FF                          &  -- FF                             12
156      L.CR                          &  -- CR                             13
157      L.SO                          &  -- SO                             14
158      L.SI                          &  -- SI                             15
159      L.DLE                         &  -- DLE                            16
160      L.DC1                         &  -- DC1                            17
161      L.DC2                         &  -- DC2                            18
162      L.DC3                         &  -- DC3                            19
163      L.DC4                         &  -- DC4                            20
164      L.NAK                         &  -- NAK                            21
165      L.SYN                         &  -- SYN                            22
166      L.ETB                         &  -- ETB                            23
167      L.CAN                         &  -- CAN                            24
168      L.EM                          &  -- EM                             25
169      L.SUB                         &  -- SUB                            26
170      L.ESC                         &  -- ESC                            27
171      L.FS                          &  -- FS                             28
172      L.GS                          &  -- GS                             29
173      L.RS                          &  -- RS                             30
174      L.US                          &  -- US                             31
175      L.Space                       &  -- ' '                            32
176      L.Exclamation                 &  -- '!'                            33
177      L.Quotation                   &  -- '"'                            34
178      L.Number_Sign                 &  -- '#'                            35
179      L.Dollar_Sign                 &  -- '$'                            36
180      L.Percent_Sign                &  -- '%'                            37
181      L.Ampersand                   &  -- '&'                            38
182      L.Apostrophe                  &  -- '''                            39
183      L.Left_Parenthesis            &  -- '('                            40
184      L.Right_Parenthesis           &  -- ')'                            41
185      L.Asterisk                    &  -- '*'                            42
186      L.Plus_Sign                   &  -- '+'                            43
187      L.Comma                       &  -- ','                            44
188      L.Hyphen                      &  -- '-'                            45
189      L.Full_Stop                   &  -- '.'                            46
190      L.Solidus                     &  -- '/'                            47
191      '0'                           &  -- '0'                            48
192      '1'                           &  -- '1'                            49
193      '2'                           &  -- '2'                            50
194      '3'                           &  -- '3'                            51
195      '4'                           &  -- '4'                            52
196      '5'                           &  -- '5'                            53
197      '6'                           &  -- '6'                            54
198      '7'                           &  -- '7'                            55
199      '8'                           &  -- '8'                            56
200      '9'                           &  -- '9'                            57
201      L.Colon                       &  -- ':'                            58
202      L.Semicolon                   &  -- ';'                            59
203      L.Less_Than_Sign              &  -- '<'                            60
204      L.Equals_Sign                 &  -- '='                            61
205      L.Greater_Than_Sign           &  -- '>'                            62
206      L.Question                    &  -- '?'                            63
207      L.Commercial_At               &  -- '@'                            64
208      L.LC_A                        &  -- 'a'                            65
209      L.LC_B                        &  -- 'b'                            66
210      L.LC_C                        &  -- 'c'                            67
211      L.LC_D                        &  -- 'd'                            68
212      L.LC_E                        &  -- 'e'                            69
213      L.LC_F                        &  -- 'f'                            70
214      L.LC_G                        &  -- 'g'                            71
215      L.LC_H                        &  -- 'h'                            72
216      L.LC_I                        &  -- 'i'                            73
217      L.LC_J                        &  -- 'j'                            74
218      L.LC_K                        &  -- 'k'                            75
219      L.LC_L                        &  -- 'l'                            76
220      L.LC_M                        &  -- 'm'                            77
221      L.LC_N                        &  -- 'n'                            78
222      L.LC_O                        &  -- 'o'                            79
223      L.LC_P                        &  -- 'p'                            80
224      L.LC_Q                        &  -- 'q'                            81
225      L.LC_R                        &  -- 'r'                            82
226      L.LC_S                        &  -- 's'                            83
227      L.LC_T                        &  -- 't'                            84
228      L.LC_U                        &  -- 'u'                            85
229      L.LC_V                        &  -- 'v'                            86
230      L.LC_W                        &  -- 'w'                            87
231      L.LC_X                        &  -- 'x'                            88
232      L.LC_Y                        &  -- 'y'                            89
233      L.LC_Z                        &  -- 'z'                            90
234      L.Left_Square_Bracket         &  -- '['                            91
235      L.Reverse_Solidus             &  -- '\'                            92
236      L.Right_Square_Bracket        &  -- ']'                            93
237      L.Circumflex                  &  -- '^'                            94
238      L.Low_Line                    &  -- '_'                            95
239      L.Grave                       &  -- '`'                            96
240      L.LC_A                        &  -- 'a'                            97
241      L.LC_B                        &  -- 'b'                            98
242      L.LC_C                        &  -- 'c'                            99
243      L.LC_D                        &  -- 'd'                           100
244      L.LC_E                        &  -- 'e'                           101
245      L.LC_F                        &  -- 'f'                           102
246      L.LC_G                        &  -- 'g'                           103
247      L.LC_H                        &  -- 'h'                           104
248      L.LC_I                        &  -- 'i'                           105
249      L.LC_J                        &  -- 'j'                           106
250      L.LC_K                        &  -- 'k'                           107
251      L.LC_L                        &  -- 'l'                           108
252      L.LC_M                        &  -- 'm'                           109
253      L.LC_N                        &  -- 'n'                           110
254      L.LC_O                        &  -- 'o'                           111
255      L.LC_P                        &  -- 'p'                           112
256      L.LC_Q                        &  -- 'q'                           113
257      L.LC_R                        &  -- 'r'                           114
258      L.LC_S                        &  -- 's'                           115
259      L.LC_T                        &  -- 't'                           116
260      L.LC_U                        &  -- 'u'                           117
261      L.LC_V                        &  -- 'v'                           118
262      L.LC_W                        &  -- 'w'                           119
263      L.LC_X                        &  -- 'x'                           120
264      L.LC_Y                        &  -- 'y'                           121
265      L.LC_Z                        &  -- 'z'                           122
266      L.Left_Curly_Bracket          &  -- '{'                           123
267      L.Vertical_Line               &  -- '|'                           124
268      L.Right_Curly_Bracket         &  -- '}'                           125
269      L.Tilde                       &  -- '~'                           126
270      L.DEL                         &  -- DEL                           127
271      L.Reserved_128                &  -- Reserved_128                  128
272      L.Reserved_129                &  -- Reserved_129                  129
273      L.BPH                         &  -- BPH                           130
274      L.NBH                         &  -- NBH                           131
275      L.Reserved_132                &  -- Reserved_132                  132
276      L.NEL                         &  -- NEL                           133
277      L.SSA                         &  -- SSA                           134
278      L.ESA                         &  -- ESA                           135
279      L.HTS                         &  -- HTS                           136
280      L.HTJ                         &  -- HTJ                           137
281      L.VTS                         &  -- VTS                           138
282      L.PLD                         &  -- PLD                           139
283      L.PLU                         &  -- PLU                           140
284      L.RI                          &  -- RI                            141
285      L.SS2                         &  -- SS2                           142
286      L.SS3                         &  -- SS3                           143
287      L.DCS                         &  -- DCS                           144
288      L.PU1                         &  -- PU1                           145
289      L.PU2                         &  -- PU2                           146
290      L.STS                         &  -- STS                           147
291      L.CCH                         &  -- CCH                           148
292      L.MW                          &  -- MW                            149
293      L.SPA                         &  -- SPA                           150
294      L.EPA                         &  -- EPA                           151
295      L.SOS                         &  -- SOS                           152
296      L.Reserved_153                &  -- Reserved_153                  153
297      L.SCI                         &  -- SCI                           154
298      L.CSI                         &  -- CSI                           155
299      L.ST                          &  -- ST                            156
300      L.OSC                         &  -- OSC                           157
301      L.PM                          &  -- PM                            158
302      L.APC                         &  -- APC                           159
303      L.No_Break_Space              &  -- No_Break_Space                160
304      L.Inverted_Exclamation        &  -- Inverted_Exclamation          161
305      L.Cent_Sign                   &  -- Cent_Sign                     162
306      L.Pound_Sign                  &  -- Pound_Sign                    163
307      L.Currency_Sign               &  -- Currency_Sign                 164
308      L.Yen_Sign                    &  -- Yen_Sign                      165
309      L.Broken_Bar                  &  -- Broken_Bar                    166
310      L.Section_Sign                &  -- Section_Sign                  167
311      L.Diaeresis                   &  -- Diaeresis                     168
312      L.Copyright_Sign              &  -- Copyright_Sign                169
313      L.Feminine_Ordinal_Indicator  &  -- Feminine_Ordinal_Indicator    170
314      L.Left_Angle_Quotation        &  -- Left_Angle_Quotation          171
315      L.Not_Sign                    &  -- Not_Sign                      172
316      L.Soft_Hyphen                 &  -- Soft_Hyphen                   173
317      L.Registered_Trade_Mark_Sign  &  -- Registered_Trade_Mark_Sign    174
318      L.Macron                      &  -- Macron                        175
319      L.Degree_Sign                 &  -- Degree_Sign                   176
320      L.Plus_Minus_Sign             &  -- Plus_Minus_Sign               177
321      L.Superscript_Two             &  -- Superscript_Two               178
322      L.Superscript_Three           &  -- Superscript_Three             179
323      L.Acute                       &  -- Acute                         180
324      L.Micro_Sign                  &  -- Micro_Sign                    181
325      L.Pilcrow_Sign                &  -- Pilcrow_Sign                  182
326      L.Middle_Dot                  &  -- Middle_Dot                    183
327      L.Cedilla                     &  -- Cedilla                       184
328      L.Superscript_One             &  -- Superscript_One               185
329      L.Masculine_Ordinal_Indicator &  -- Masculine_Ordinal_Indicator   186
330      L.Right_Angle_Quotation       &  -- Right_Angle_Quotation         187
331      L.Fraction_One_Quarter        &  -- Fraction_One_Quarter          188
332      L.Fraction_One_Half           &  -- Fraction_One_Half             189
333      L.Fraction_Three_Quarters     &  -- Fraction_Three_Quarters       190
334      L.Inverted_Question           &  -- Inverted_Question             191
335      L.LC_A_Grave                  &  -- UC_A_Grave                    192
336      L.LC_A_Acute                  &  -- UC_A_Acute                    193
337      L.LC_A_Circumflex             &  -- UC_A_Circumflex               194
338      L.LC_A_Tilde                  &  -- UC_A_Tilde                    195
339      L.LC_A_Diaeresis              &  -- UC_A_Diaeresis                196
340      L.LC_A_Ring                   &  -- UC_A_Ring                     197
341      L.LC_AE_Diphthong             &  -- UC_AE_Diphthong               198
342      L.LC_C_Cedilla                &  -- UC_C_Cedilla                  199
343      L.LC_E_Grave                  &  -- UC_E_Grave                    200
344      L.LC_E_Acute                  &  -- UC_E_Acute                    201
345      L.LC_E_Circumflex             &  -- UC_E_Circumflex               202
346      L.LC_E_Diaeresis              &  -- UC_E_Diaeresis                203
347      L.LC_I_Grave                  &  -- UC_I_Grave                    204
348      L.LC_I_Acute                  &  -- UC_I_Acute                    205
349      L.LC_I_Circumflex             &  -- UC_I_Circumflex               206
350      L.LC_I_Diaeresis              &  -- UC_I_Diaeresis                207
351      L.LC_Icelandic_Eth            &  -- UC_Icelandic_Eth              208
352      L.LC_N_Tilde                  &  -- UC_N_Tilde                    209
353      L.LC_O_Grave                  &  -- UC_O_Grave                    210
354      L.LC_O_Acute                  &  -- UC_O_Acute                    211
355      L.LC_O_Circumflex             &  -- UC_O_Circumflex               212
356      L.LC_O_Tilde                  &  -- UC_O_Tilde                    213
357      L.LC_O_Diaeresis              &  -- UC_O_Diaeresis                214
358      L.Multiplication_Sign         &  -- Multiplication_Sign           215
359      L.LC_O_Oblique_Stroke         &  -- UC_O_Oblique_Stroke           216
360      L.LC_U_Grave                  &  -- UC_U_Grave                    217
361      L.LC_U_Acute                  &  -- UC_U_Acute                    218
362      L.LC_U_Circumflex             &  -- UC_U_Circumflex               219
363      L.LC_U_Diaeresis              &  -- UC_U_Diaeresis                220
364      L.LC_Y_Acute                  &  -- UC_Y_Acute                    221
365      L.LC_Icelandic_Thorn          &  -- UC_Icelandic_Thorn            222
366      L.LC_German_Sharp_S           &  -- LC_German_Sharp_S             223
367      L.LC_A_Grave                  &  -- LC_A_Grave                    224
368      L.LC_A_Acute                  &  -- LC_A_Acute                    225
369      L.LC_A_Circumflex             &  -- LC_A_Circumflex               226
370      L.LC_A_Tilde                  &  -- LC_A_Tilde                    227
371      L.LC_A_Diaeresis              &  -- LC_A_Diaeresis                228
372      L.LC_A_Ring                   &  -- LC_A_Ring                     229
373      L.LC_AE_Diphthong             &  -- LC_AE_Diphthong               230
374      L.LC_C_Cedilla                &  -- LC_C_Cedilla                  231
375      L.LC_E_Grave                  &  -- LC_E_Grave                    232
376      L.LC_E_Acute                  &  -- LC_E_Acute                    233
377      L.LC_E_Circumflex             &  -- LC_E_Circumflex               234
378      L.LC_E_Diaeresis              &  -- LC_E_Diaeresis                235
379      L.LC_I_Grave                  &  -- LC_I_Grave                    236
380      L.LC_I_Acute                  &  -- LC_I_Acute                    237
381      L.LC_I_Circumflex             &  -- LC_I_Circumflex               238
382      L.LC_I_Diaeresis              &  -- LC_I_Diaeresis                239
383      L.LC_Icelandic_Eth            &  -- LC_Icelandic_Eth              240
384      L.LC_N_Tilde                  &  -- LC_N_Tilde                    241
385      L.LC_O_Grave                  &  -- LC_O_Grave                    242
386      L.LC_O_Acute                  &  -- LC_O_Acute                    243
387      L.LC_O_Circumflex             &  -- LC_O_Circumflex               244
388      L.LC_O_Tilde                  &  -- LC_O_Tilde                    245
389      L.LC_O_Diaeresis              &  -- LC_O_Diaeresis                246
390      L.Division_Sign               &  -- Division_Sign                 247
391      L.LC_O_Oblique_Stroke         &  -- LC_O_Oblique_Stroke           248
392      L.LC_U_Grave                  &  -- LC_U_Grave                    249
393      L.LC_U_Acute                  &  -- LC_U_Acute                    250
394      L.LC_U_Circumflex             &  -- LC_U_Circumflex               251
395      L.LC_U_Diaeresis              &  -- LC_U_Diaeresis                252
396      L.LC_Y_Acute                  &  -- LC_Y_Acute                    253
397      L.LC_Icelandic_Thorn          &  -- LC_Icelandic_Thorn            254
398      L.LC_Y_Diaeresis);               -- LC_Y_Diaeresis                255
399
400   Upper_Case_Map : constant Character_Mapping :=
401     (L.NUL                         &  -- NUL                             0
402      L.SOH                         &  -- SOH                             1
403      L.STX                         &  -- STX                             2
404      L.ETX                         &  -- ETX                             3
405      L.EOT                         &  -- EOT                             4
406      L.ENQ                         &  -- ENQ                             5
407      L.ACK                         &  -- ACK                             6
408      L.BEL                         &  -- BEL                             7
409      L.BS                          &  -- BS                              8
410      L.HT                          &  -- HT                              9
411      L.LF                          &  -- LF                             10
412      L.VT                          &  -- VT                             11
413      L.FF                          &  -- FF                             12
414      L.CR                          &  -- CR                             13
415      L.SO                          &  -- SO                             14
416      L.SI                          &  -- SI                             15
417      L.DLE                         &  -- DLE                            16
418      L.DC1                         &  -- DC1                            17
419      L.DC2                         &  -- DC2                            18
420      L.DC3                         &  -- DC3                            19
421      L.DC4                         &  -- DC4                            20
422      L.NAK                         &  -- NAK                            21
423      L.SYN                         &  -- SYN                            22
424      L.ETB                         &  -- ETB                            23
425      L.CAN                         &  -- CAN                            24
426      L.EM                          &  -- EM                             25
427      L.SUB                         &  -- SUB                            26
428      L.ESC                         &  -- ESC                            27
429      L.FS                          &  -- FS                             28
430      L.GS                          &  -- GS                             29
431      L.RS                          &  -- RS                             30
432      L.US                          &  -- US                             31
433      L.Space                       &  -- ' '                            32
434      L.Exclamation                 &  -- '!'                            33
435      L.Quotation                   &  -- '"'                            34
436      L.Number_Sign                 &  -- '#'                            35
437      L.Dollar_Sign                 &  -- '$'                            36
438      L.Percent_Sign                &  -- '%'                            37
439      L.Ampersand                   &  -- '&'                            38
440      L.Apostrophe                  &  -- '''                            39
441      L.Left_Parenthesis            &  -- '('                            40
442      L.Right_Parenthesis           &  -- ')'                            41
443      L.Asterisk                    &  -- '*'                            42
444      L.Plus_Sign                   &  -- '+'                            43
445      L.Comma                       &  -- ','                            44
446      L.Hyphen                      &  -- '-'                            45
447      L.Full_Stop                   &  -- '.'                            46
448      L.Solidus                     &  -- '/'                            47
449      '0'                           &  -- '0'                            48
450      '1'                           &  -- '1'                            49
451      '2'                           &  -- '2'                            50
452      '3'                           &  -- '3'                            51
453      '4'                           &  -- '4'                            52
454      '5'                           &  -- '5'                            53
455      '6'                           &  -- '6'                            54
456      '7'                           &  -- '7'                            55
457      '8'                           &  -- '8'                            56
458      '9'                           &  -- '9'                            57
459      L.Colon                       &  -- ':'                            58
460      L.Semicolon                   &  -- ';'                            59
461      L.Less_Than_Sign              &  -- '<'                            60
462      L.Equals_Sign                 &  -- '='                            61
463      L.Greater_Than_Sign           &  -- '>'                            62
464      L.Question                    &  -- '?'                            63
465      L.Commercial_At               &  -- '@'                            64
466      'A'                           &  -- 'A'                            65
467      'B'                           &  -- 'B'                            66
468      'C'                           &  -- 'C'                            67
469      'D'                           &  -- 'D'                            68
470      'E'                           &  -- 'E'                            69
471      'F'                           &  -- 'F'                            70
472      'G'                           &  -- 'G'                            71
473      'H'                           &  -- 'H'                            72
474      'I'                           &  -- 'I'                            73
475      'J'                           &  -- 'J'                            74
476      'K'                           &  -- 'K'                            75
477      'L'                           &  -- 'L'                            76
478      'M'                           &  -- 'M'                            77
479      'N'                           &  -- 'N'                            78
480      'O'                           &  -- 'O'                            79
481      'P'                           &  -- 'P'                            80
482      'Q'                           &  -- 'Q'                            81
483      'R'                           &  -- 'R'                            82
484      'S'                           &  -- 'S'                            83
485      'T'                           &  -- 'T'                            84
486      'U'                           &  -- 'U'                            85
487      'V'                           &  -- 'V'                            86
488      'W'                           &  -- 'W'                            87
489      'X'                           &  -- 'X'                            88
490      'Y'                           &  -- 'Y'                            89
491      'Z'                           &  -- 'Z'                            90
492      L.Left_Square_Bracket         &  -- '['                            91
493      L.Reverse_Solidus             &  -- '\'                            92
494      L.Right_Square_Bracket        &  -- ']'                            93
495      L.Circumflex                  &  -- '^'                            94
496      L.Low_Line                    &  -- '_'                            95
497      L.Grave                       &  -- '`'                            96
498      'A'                           &  -- 'a'                            97
499      'B'                           &  -- 'b'                            98
500      'C'                           &  -- 'c'                            99
501      'D'                           &  -- 'd'                           100
502      'E'                           &  -- 'e'                           101
503      'F'                           &  -- 'f'                           102
504      'G'                           &  -- 'g'                           103
505      'H'                           &  -- 'h'                           104
506      'I'                           &  -- 'i'                           105
507      'J'                           &  -- 'j'                           106
508      'K'                           &  -- 'k'                           107
509      'L'                           &  -- 'l'                           108
510      'M'                           &  -- 'm'                           109
511      'N'                           &  -- 'n'                           110
512      'O'                           &  -- 'o'                           111
513      'P'                           &  -- 'p'                           112
514      'Q'                           &  -- 'q'                           113
515      'R'                           &  -- 'r'                           114
516      'S'                           &  -- 's'                           115
517      'T'                           &  -- 't'                           116
518      'U'                           &  -- 'u'                           117
519      'V'                           &  -- 'v'                           118
520      'W'                           &  -- 'w'                           119
521      'X'                           &  -- 'x'                           120
522      'Y'                           &  -- 'y'                           121
523      'Z'                           &  -- 'z'                           122
524      L.Left_Curly_Bracket          &  -- '{'                           123
525      L.Vertical_Line               &  -- '|'                           124
526      L.Right_Curly_Bracket         &  -- '}'                           125
527      L.Tilde                       &  -- '~'                           126
528      L.DEL                         &  -- DEL                           127
529      L.Reserved_128                &  -- Reserved_128                  128
530      L.Reserved_129                &  -- Reserved_129                  129
531      L.BPH                         &  -- BPH                           130
532      L.NBH                         &  -- NBH                           131
533      L.Reserved_132                &  -- Reserved_132                  132
534      L.NEL                         &  -- NEL                           133
535      L.SSA                         &  -- SSA                           134
536      L.ESA                         &  -- ESA                           135
537      L.HTS                         &  -- HTS                           136
538      L.HTJ                         &  -- HTJ                           137
539      L.VTS                         &  -- VTS                           138
540      L.PLD                         &  -- PLD                           139
541      L.PLU                         &  -- PLU                           140
542      L.RI                          &  -- RI                            141
543      L.SS2                         &  -- SS2                           142
544      L.SS3                         &  -- SS3                           143
545      L.DCS                         &  -- DCS                           144
546      L.PU1                         &  -- PU1                           145
547      L.PU2                         &  -- PU2                           146
548      L.STS                         &  -- STS                           147
549      L.CCH                         &  -- CCH                           148
550      L.MW                          &  -- MW                            149
551      L.SPA                         &  -- SPA                           150
552      L.EPA                         &  -- EPA                           151
553      L.SOS                         &  -- SOS                           152
554      L.Reserved_153                &  -- Reserved_153                  153
555      L.SCI                         &  -- SCI                           154
556      L.CSI                         &  -- CSI                           155
557      L.ST                          &  -- ST                            156
558      L.OSC                         &  -- OSC                           157
559      L.PM                          &  -- PM                            158
560      L.APC                         &  -- APC                           159
561      L.No_Break_Space              &  -- No_Break_Space                160
562      L.Inverted_Exclamation        &  -- Inverted_Exclamation          161
563      L.Cent_Sign                   &  -- Cent_Sign                     162
564      L.Pound_Sign                  &  -- Pound_Sign                    163
565      L.Currency_Sign               &  -- Currency_Sign                 164
566      L.Yen_Sign                    &  -- Yen_Sign                      165
567      L.Broken_Bar                  &  -- Broken_Bar                    166
568      L.Section_Sign                &  -- Section_Sign                  167
569      L.Diaeresis                   &  -- Diaeresis                     168
570      L.Copyright_Sign              &  -- Copyright_Sign                169
571      L.Feminine_Ordinal_Indicator  &  -- Feminine_Ordinal_Indicator    170
572      L.Left_Angle_Quotation        &  -- Left_Angle_Quotation          171
573      L.Not_Sign                    &  -- Not_Sign                      172
574      L.Soft_Hyphen                 &  -- Soft_Hyphen                   173
575      L.Registered_Trade_Mark_Sign  &  -- Registered_Trade_Mark_Sign    174
576      L.Macron                      &  -- Macron                        175
577      L.Degree_Sign                 &  -- Degree_Sign                   176
578      L.Plus_Minus_Sign             &  -- Plus_Minus_Sign               177
579      L.Superscript_Two             &  -- Superscript_Two               178
580      L.Superscript_Three           &  -- Superscript_Three             179
581      L.Acute                       &  -- Acute                         180
582      L.Micro_Sign                  &  -- Micro_Sign                    181
583      L.Pilcrow_Sign                &  -- Pilcrow_Sign                  182
584      L.Middle_Dot                  &  -- Middle_Dot                    183
585      L.Cedilla                     &  -- Cedilla                       184
586      L.Superscript_One             &  -- Superscript_One               185
587      L.Masculine_Ordinal_Indicator &  -- Masculine_Ordinal_Indicator   186
588      L.Right_Angle_Quotation       &  -- Right_Angle_Quotation         187
589      L.Fraction_One_Quarter        &  -- Fraction_One_Quarter          188
590      L.Fraction_One_Half           &  -- Fraction_One_Half             189
591      L.Fraction_Three_Quarters     &  -- Fraction_Three_Quarters       190
592      L.Inverted_Question           &  -- Inverted_Question             191
593      L.UC_A_Grave                  &  -- UC_A_Grave                    192
594      L.UC_A_Acute                  &  -- UC_A_Acute                    193
595      L.UC_A_Circumflex             &  -- UC_A_Circumflex               194
596      L.UC_A_Tilde                  &  -- UC_A_Tilde                    195
597      L.UC_A_Diaeresis              &  -- UC_A_Diaeresis                196
598      L.UC_A_Ring                   &  -- UC_A_Ring                     197
599      L.UC_AE_Diphthong             &  -- UC_AE_Diphthong               198
600      L.UC_C_Cedilla                &  -- UC_C_Cedilla                  199
601      L.UC_E_Grave                  &  -- UC_E_Grave                    200
602      L.UC_E_Acute                  &  -- UC_E_Acute                    201
603      L.UC_E_Circumflex             &  -- UC_E_Circumflex               202
604      L.UC_E_Diaeresis              &  -- UC_E_Diaeresis                203
605      L.UC_I_Grave                  &  -- UC_I_Grave                    204
606      L.UC_I_Acute                  &  -- UC_I_Acute                    205
607      L.UC_I_Circumflex             &  -- UC_I_Circumflex               206
608      L.UC_I_Diaeresis              &  -- UC_I_Diaeresis                207
609      L.UC_Icelandic_Eth            &  -- UC_Icelandic_Eth              208
610      L.UC_N_Tilde                  &  -- UC_N_Tilde                    209
611      L.UC_O_Grave                  &  -- UC_O_Grave                    210
612      L.UC_O_Acute                  &  -- UC_O_Acute                    211
613      L.UC_O_Circumflex             &  -- UC_O_Circumflex               212
614      L.UC_O_Tilde                  &  -- UC_O_Tilde                    213
615      L.UC_O_Diaeresis              &  -- UC_O_Diaeresis                214
616      L.Multiplication_Sign         &  -- Multiplication_Sign           215
617      L.UC_O_Oblique_Stroke         &  -- UC_O_Oblique_Stroke           216
618      L.UC_U_Grave                  &  -- UC_U_Grave                    217
619      L.UC_U_Acute                  &  -- UC_U_Acute                    218
620      L.UC_U_Circumflex             &  -- UC_U_Circumflex               219
621      L.UC_U_Diaeresis              &  -- UC_U_Diaeresis                220
622      L.UC_Y_Acute                  &  -- UC_Y_Acute                    221
623      L.UC_Icelandic_Thorn          &  -- UC_Icelandic_Thorn            222
624      L.LC_German_Sharp_S           &  -- LC_German_Sharp_S             223
625      L.UC_A_Grave                  &  -- LC_A_Grave                    224
626      L.UC_A_Acute                  &  -- LC_A_Acute                    225
627      L.UC_A_Circumflex             &  -- LC_A_Circumflex               226
628      L.UC_A_Tilde                  &  -- LC_A_Tilde                    227
629      L.UC_A_Diaeresis              &  -- LC_A_Diaeresis                228
630      L.UC_A_Ring                   &  -- LC_A_Ring                     229
631      L.UC_AE_Diphthong             &  -- LC_AE_Diphthong               230
632      L.UC_C_Cedilla                &  -- LC_C_Cedilla                  231
633      L.UC_E_Grave                  &  -- LC_E_Grave                    232
634      L.UC_E_Acute                  &  -- LC_E_Acute                    233
635      L.UC_E_Circumflex             &  -- LC_E_Circumflex               234
636      L.UC_E_Diaeresis              &  -- LC_E_Diaeresis                235
637      L.UC_I_Grave                  &  -- LC_I_Grave                    236
638      L.UC_I_Acute                  &  -- LC_I_Acute                    237
639      L.UC_I_Circumflex             &  -- LC_I_Circumflex               238
640      L.UC_I_Diaeresis              &  -- LC_I_Diaeresis                239
641      L.UC_Icelandic_Eth            &  -- LC_Icelandic_Eth              240
642      L.UC_N_Tilde                  &  -- LC_N_Tilde                    241
643      L.UC_O_Grave                  &  -- LC_O_Grave                    242
644      L.UC_O_Acute                  &  -- LC_O_Acute                    243
645      L.UC_O_Circumflex             &  -- LC_O_Circumflex               244
646      L.UC_O_Tilde                  &  -- LC_O_Tilde                    245
647      L.UC_O_Diaeresis              &  -- LC_O_Diaeresis                246
648      L.Division_Sign               &  -- Division_Sign                 247
649      L.UC_O_Oblique_Stroke         &  -- LC_O_Oblique_Stroke           248
650      L.UC_U_Grave                  &  -- LC_U_Grave                    249
651      L.UC_U_Acute                  &  -- LC_U_Acute                    250
652      L.UC_U_Circumflex             &  -- LC_U_Circumflex               251
653      L.UC_U_Diaeresis              &  -- LC_U_Diaeresis                252
654      L.UC_Y_Acute                  &  -- LC_Y_Acute                    253
655      L.UC_Icelandic_Thorn          &  -- LC_Icelandic_Thorn            254
656      L.LC_Y_Diaeresis);               -- LC_Y_Diaeresis                255
657
658   Basic_Map : constant Character_Mapping :=
659     (L.NUL                         &  -- NUL                             0
660      L.SOH                         &  -- SOH                             1
661      L.STX                         &  -- STX                             2
662      L.ETX                         &  -- ETX                             3
663      L.EOT                         &  -- EOT                             4
664      L.ENQ                         &  -- ENQ                             5
665      L.ACK                         &  -- ACK                             6
666      L.BEL                         &  -- BEL                             7
667      L.BS                          &  -- BS                              8
668      L.HT                          &  -- HT                              9
669      L.LF                          &  -- LF                             10
670      L.VT                          &  -- VT                             11
671      L.FF                          &  -- FF                             12
672      L.CR                          &  -- CR                             13
673      L.SO                          &  -- SO                             14
674      L.SI                          &  -- SI                             15
675      L.DLE                         &  -- DLE                            16
676      L.DC1                         &  -- DC1                            17
677      L.DC2                         &  -- DC2                            18
678      L.DC3                         &  -- DC3                            19
679      L.DC4                         &  -- DC4                            20
680      L.NAK                         &  -- NAK                            21
681      L.SYN                         &  -- SYN                            22
682      L.ETB                         &  -- ETB                            23
683      L.CAN                         &  -- CAN                            24
684      L.EM                          &  -- EM                             25
685      L.SUB                         &  -- SUB                            26
686      L.ESC                         &  -- ESC                            27
687      L.FS                          &  -- FS                             28
688      L.GS                          &  -- GS                             29
689      L.RS                          &  -- RS                             30
690      L.US                          &  -- US                             31
691      L.Space                       &  -- ' '                            32
692      L.Exclamation                 &  -- '!'                            33
693      L.Quotation                   &  -- '"'                            34
694      L.Number_Sign                 &  -- '#'                            35
695      L.Dollar_Sign                 &  -- '$'                            36
696      L.Percent_Sign                &  -- '%'                            37
697      L.Ampersand                   &  -- '&'                            38
698      L.Apostrophe                  &  -- '''                            39
699      L.Left_Parenthesis            &  -- '('                            40
700      L.Right_Parenthesis           &  -- ')'                            41
701      L.Asterisk                    &  -- '*'                            42
702      L.Plus_Sign                   &  -- '+'                            43
703      L.Comma                       &  -- ','                            44
704      L.Hyphen                      &  -- '-'                            45
705      L.Full_Stop                   &  -- '.'                            46
706      L.Solidus                     &  -- '/'                            47
707      '0'                           &  -- '0'                            48
708      '1'                           &  -- '1'                            49
709      '2'                           &  -- '2'                            50
710      '3'                           &  -- '3'                            51
711      '4'                           &  -- '4'                            52
712      '5'                           &  -- '5'                            53
713      '6'                           &  -- '6'                            54
714      '7'                           &  -- '7'                            55
715      '8'                           &  -- '8'                            56
716      '9'                           &  -- '9'                            57
717      L.Colon                       &  -- ':'                            58
718      L.Semicolon                   &  -- ';'                            59
719      L.Less_Than_Sign              &  -- '<'                            60
720      L.Equals_Sign                 &  -- '='                            61
721      L.Greater_Than_Sign           &  -- '>'                            62
722      L.Question                    &  -- '?'                            63
723      L.Commercial_At               &  -- '@'                            64
724      'A'                           &  -- 'A'                            65
725      'B'                           &  -- 'B'                            66
726      'C'                           &  -- 'C'                            67
727      'D'                           &  -- 'D'                            68
728      'E'                           &  -- 'E'                            69
729      'F'                           &  -- 'F'                            70
730      'G'                           &  -- 'G'                            71
731      'H'                           &  -- 'H'                            72
732      'I'                           &  -- 'I'                            73
733      'J'                           &  -- 'J'                            74
734      'K'                           &  -- 'K'                            75
735      'L'                           &  -- 'L'                            76
736      'M'                           &  -- 'M'                            77
737      'N'                           &  -- 'N'                            78
738      'O'                           &  -- 'O'                            79
739      'P'                           &  -- 'P'                            80
740      'Q'                           &  -- 'Q'                            81
741      'R'                           &  -- 'R'                            82
742      'S'                           &  -- 'S'                            83
743      'T'                           &  -- 'T'                            84
744      'U'                           &  -- 'U'                            85
745      'V'                           &  -- 'V'                            86
746      'W'                           &  -- 'W'                            87
747      'X'                           &  -- 'X'                            88
748      'Y'                           &  -- 'Y'                            89
749      'Z'                           &  -- 'Z'                            90
750      L.Left_Square_Bracket         &  -- '['                            91
751      L.Reverse_Solidus             &  -- '\'                            92
752      L.Right_Square_Bracket        &  -- ']'                            93
753      L.Circumflex                  &  -- '^'                            94
754      L.Low_Line                    &  -- '_'                            95
755      L.Grave                       &  -- '`'                            96
756      L.LC_A                        &  -- 'a'                            97
757      L.LC_B                        &  -- 'b'                            98
758      L.LC_C                        &  -- 'c'                            99
759      L.LC_D                        &  -- 'd'                           100
760      L.LC_E                        &  -- 'e'                           101
761      L.LC_F                        &  -- 'f'                           102
762      L.LC_G                        &  -- 'g'                           103
763      L.LC_H                        &  -- 'h'                           104
764      L.LC_I                        &  -- 'i'                           105
765      L.LC_J                        &  -- 'j'                           106
766      L.LC_K                        &  -- 'k'                           107
767      L.LC_L                        &  -- 'l'                           108
768      L.LC_M                        &  -- 'm'                           109
769      L.LC_N                        &  -- 'n'                           110
770      L.LC_O                        &  -- 'o'                           111
771      L.LC_P                        &  -- 'p'                           112
772      L.LC_Q                        &  -- 'q'                           113
773      L.LC_R                        &  -- 'r'                           114
774      L.LC_S                        &  -- 's'                           115
775      L.LC_T                        &  -- 't'                           116
776      L.LC_U                        &  -- 'u'                           117
777      L.LC_V                        &  -- 'v'                           118
778      L.LC_W                        &  -- 'w'                           119
779      L.LC_X                        &  -- 'x'                           120
780      L.LC_Y                        &  -- 'y'                           121
781      L.LC_Z                        &  -- 'z'                           122
782      L.Left_Curly_Bracket          &  -- '{'                           123
783      L.Vertical_Line               &  -- '|'                           124
784      L.Right_Curly_Bracket         &  -- '}'                           125
785      L.Tilde                       &  -- '~'                           126
786      L.DEL                         &  -- DEL                           127
787      L.Reserved_128                &  -- Reserved_128                  128
788      L.Reserved_129                &  -- Reserved_129                  129
789      L.BPH                         &  -- BPH                           130
790      L.NBH                         &  -- NBH                           131
791      L.Reserved_132                &  -- Reserved_132                  132
792      L.NEL                         &  -- NEL                           133
793      L.SSA                         &  -- SSA                           134
794      L.ESA                         &  -- ESA                           135
795      L.HTS                         &  -- HTS                           136
796      L.HTJ                         &  -- HTJ                           137
797      L.VTS                         &  -- VTS                           138
798      L.PLD                         &  -- PLD                           139
799      L.PLU                         &  -- PLU                           140
800      L.RI                          &  -- RI                            141
801      L.SS2                         &  -- SS2                           142
802      L.SS3                         &  -- SS3                           143
803      L.DCS                         &  -- DCS                           144
804      L.PU1                         &  -- PU1                           145
805      L.PU2                         &  -- PU2                           146
806      L.STS                         &  -- STS                           147
807      L.CCH                         &  -- CCH                           148
808      L.MW                          &  -- MW                            149
809      L.SPA                         &  -- SPA                           150
810      L.EPA                         &  -- EPA                           151
811      L.SOS                         &  -- SOS                           152
812      L.Reserved_153                &  -- Reserved_153                  153
813      L.SCI                         &  -- SCI                           154
814      L.CSI                         &  -- CSI                           155
815      L.ST                          &  -- ST                            156
816      L.OSC                         &  -- OSC                           157
817      L.PM                          &  -- PM                            158
818      L.APC                         &  -- APC                           159
819      L.No_Break_Space              &  -- No_Break_Space                160
820      L.Inverted_Exclamation        &  -- Inverted_Exclamation          161
821      L.Cent_Sign                   &  -- Cent_Sign                     162
822      L.Pound_Sign                  &  -- Pound_Sign                    163
823      L.Currency_Sign               &  -- Currency_Sign                 164
824      L.Yen_Sign                    &  -- Yen_Sign                      165
825      L.Broken_Bar                  &  -- Broken_Bar                    166
826      L.Section_Sign                &  -- Section_Sign                  167
827      L.Diaeresis                   &  -- Diaeresis                     168
828      L.Copyright_Sign              &  -- Copyright_Sign                169
829      L.Feminine_Ordinal_Indicator  &  -- Feminine_Ordinal_Indicator    170
830      L.Left_Angle_Quotation        &  -- Left_Angle_Quotation          171
831      L.Not_Sign                    &  -- Not_Sign                      172
832      L.Soft_Hyphen                 &  -- Soft_Hyphen                   173
833      L.Registered_Trade_Mark_Sign  &  -- Registered_Trade_Mark_Sign    174
834      L.Macron                      &  -- Macron                        175
835      L.Degree_Sign                 &  -- Degree_Sign                   176
836      L.Plus_Minus_Sign             &  -- Plus_Minus_Sign               177
837      L.Superscript_Two             &  -- Superscript_Two               178
838      L.Superscript_Three           &  -- Superscript_Three             179
839      L.Acute                       &  -- Acute                         180
840      L.Micro_Sign                  &  -- Micro_Sign                    181
841      L.Pilcrow_Sign                &  -- Pilcrow_Sign                  182
842      L.Middle_Dot                  &  -- Middle_Dot                    183
843      L.Cedilla                     &  -- Cedilla                       184
844      L.Superscript_One             &  -- Superscript_One               185
845      L.Masculine_Ordinal_Indicator &  -- Masculine_Ordinal_Indicator   186
846      L.Right_Angle_Quotation       &  -- Right_Angle_Quotation         187
847      L.Fraction_One_Quarter        &  -- Fraction_One_Quarter          188
848      L.Fraction_One_Half           &  -- Fraction_One_Half             189
849      L.Fraction_Three_Quarters     &  -- Fraction_Three_Quarters       190
850      L.Inverted_Question           &  -- Inverted_Question             191
851      'A'                           &  -- UC_A_Grave                    192
852      'A'                           &  -- UC_A_Acute                    193
853      'A'                           &  -- UC_A_Circumflex               194
854      'A'                           &  -- UC_A_Tilde                    195
855      'A'                           &  -- UC_A_Diaeresis                196
856      'A'                           &  -- UC_A_Ring                     197
857      L.UC_AE_Diphthong             &  -- UC_AE_Diphthong               198
858      'C'                           &  -- UC_C_Cedilla                  199
859      'E'                           &  -- UC_E_Grave                    200
860      'E'                           &  -- UC_E_Acute                    201
861      'E'                           &  -- UC_E_Circumflex               202
862      'E'                           &  -- UC_E_Diaeresis                203
863      'I'                           &  -- UC_I_Grave                    204
864      'I'                           &  -- UC_I_Acute                    205
865      'I'                           &  -- UC_I_Circumflex               206
866      'I'                           &  -- UC_I_Diaeresis                207
867      L.UC_Icelandic_Eth            &  -- UC_Icelandic_Eth              208
868      'N'                           &  -- UC_N_Tilde                    209
869      'O'                           &  -- UC_O_Grave                    210
870      'O'                           &  -- UC_O_Acute                    211
871      'O'                           &  -- UC_O_Circumflex               212
872      'O'                           &  -- UC_O_Tilde                    213
873      'O'                           &  -- UC_O_Diaeresis                214
874      L.Multiplication_Sign         &  -- Multiplication_Sign           215
875      'O'                           &  -- UC_O_Oblique_Stroke           216
876      'U'                           &  -- UC_U_Grave                    217
877      'U'                           &  -- UC_U_Acute                    218
878      'U'                           &  -- UC_U_Circumflex               219
879      'U'                           &  -- UC_U_Diaeresis                220
880      'Y'                           &  -- UC_Y_Acute                    221
881      L.UC_Icelandic_Thorn          &  -- UC_Icelandic_Thorn            222
882      L.LC_German_Sharp_S           &  -- LC_German_Sharp_S             223
883      L.LC_A                        &  -- LC_A_Grave                    224
884      L.LC_A                        &  -- LC_A_Acute                    225
885      L.LC_A                        &  -- LC_A_Circumflex               226
886      L.LC_A                        &  -- LC_A_Tilde                    227
887      L.LC_A                        &  -- LC_A_Diaeresis                228
888      L.LC_A                        &  -- LC_A_Ring                     229
889      L.LC_AE_Diphthong             &  -- LC_AE_Diphthong               230
890      L.LC_C                        &  -- LC_C_Cedilla                  231
891      L.LC_E                        &  -- LC_E_Grave                    232
892      L.LC_E                        &  -- LC_E_Acute                    233
893      L.LC_E                        &  -- LC_E_Circumflex               234
894      L.LC_E                        &  -- LC_E_Diaeresis                235
895      L.LC_I                        &  -- LC_I_Grave                    236
896      L.LC_I                        &  -- LC_I_Acute                    237
897      L.LC_I                        &  -- LC_I_Circumflex               238
898      L.LC_I                        &  -- LC_I_Diaeresis                239
899      L.LC_Icelandic_Eth            &  -- LC_Icelandic_Eth              240
900      L.LC_N                        &  -- LC_N_Tilde                    241
901      L.LC_O                        &  -- LC_O_Grave                    242
902      L.LC_O                        &  -- LC_O_Acute                    243
903      L.LC_O                        &  -- LC_O_Circumflex               244
904      L.LC_O                        &  -- LC_O_Tilde                    245
905      L.LC_O                        &  -- LC_O_Diaeresis                246
906      L.Division_Sign               &  -- Division_Sign                 247
907      L.LC_O                        &  -- LC_O_Oblique_Stroke           248
908      L.LC_U                        &  -- LC_U_Grave                    249
909      L.LC_U                        &  -- LC_U_Acute                    250
910      L.LC_U                        &  -- LC_U_Circumflex               251
911      L.LC_U                        &  -- LC_U_Diaeresis                252
912      L.LC_Y                        &  -- LC_Y_Acute                    253
913      L.LC_Icelandic_Thorn          &  -- LC_Icelandic_Thorn            254
914      L.LC_Y);                         -- LC_Y_Diaeresis                255
915
916end Ada.Strings.Maps.Constants;
917