# liblouis: Italiano 8 punti

# -----------
#-index-name: Italian, computer
#-display-name: Italian computer braille
#
#+locale:it
#+type:computer
#+dots:8
#
# TODO: Please correct the metadata above. It is not meant to be
# accurate nor complete. It hasn't been verified by the table
# author yet. It is merely an attempt by the liblouis maintainers
# to get some sensible initial values in place.
#
# TODO: Please add a reference to official documentation about
# the implemented braille code. Preferably submit the documents
# to https://github.com/liblouis/braille-specs.
# -----------

#  Copyright (C) 2011 by Caterina Avoledo <catery81@yahoo.it>
#  Copyright (C) 2012,2016 by Simone Dal Maso <simone.dalmaso@juvox.it>

#  This file is part of liblouis.
#
#  liblouis is free software: you can redistribute it and/or modify it
#  under the terms of the GNU Lesser General Public License as
#  published by the Free Software Foundation, either version 3 of the
#  License, or (at your option) any later version.
#
#  liblouis is distributed in the hope that it will be useful, but
#  WITHOUT ANY WARRANTY; without even the implied warranty of
#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
#  Lesser General Public License for more details.
#
#  You should have received a copy of the GNU Lesser General Public
#  License along with liblouis. If not, see
#  <http://www.gnu.org/licenses/>.
#

#--------------------- All chars definitions ------------------------------

space \x0000  34578   #NULL
space \x0001  178 #Start of heading
space \x0002  1278  #Start of text
space \x0003  1478  #End of text
space \x0004  14578 #End of transmission
space \x0005  1578  #Enquiry
space \x0006  12478 #Acknowledge
space \x0007  124578  #Bell
space \x0008  12578 #Backspace
#space \x0009  2478
space \s  0   #blank 32
space \t  0 #Tab  \x0009
space \x000A  24578 #Line feed
space \x000B  1378  #Line tabulation
space \x000C  12378 #Form feed
space \x000D  13478 #Carriage return
space \x000E  134578  #Shift out
space \x000F  13578 #Shift in
space \x0010  123478    #Data link escape
space \x0011  1234578   #Device control one
space \x0012  123578    #Device control two
space \x0013  23478   #Device control three
space \x0014  234578    #Device control four
space \x0015  13678   #Negative acknoledgement
space \x0016  123678    #Synchronous idle
space \x0017  245678    #End of transmission block
space \x0018  134678    #Cancel
space \x0019  1345678   #End of medium
space \x001A  135678    #Substitute
space \x001B  1235678   #Escape
space \x001C  3478    #Information separator four
space \x001D  2345678   #Information separator three
space \x001E  234678    #Information separator two
space \x001F  45678   #Information separator one
punctuation ! 5						#33
punctuation " 4						#34
sign # 3456								#35
sign $ 46									#36
sign % 123456							#37
sign & 12346							#38
punctuation ' 6	  				#39
punctuation ( 236					#40
punctuation ) 356					#41
punctuation *	35					#42
sign + 235								#43
punctuation , 2						#44
punctuation - 36					#45  the hyphen-minus
punctuation . 3						#46
sign / 256								#47

include digits6DotsPlusDot6.uti

punctuation : 25			#colon	x003A
punctuation ;	23			#semicolon x003B
math < 56							#x003C
math = 2356						#equal sign	x003D
math > 45										#x003E
punctuation ? 26						#x003F
sign @ 3457						#commercial at x0040

include latinLetterDef8Dots.uti
punctuation [ 123567			#91
sign \\ 347								#92
punctuation ] 234567			#93
sign ^ 23467							#94
sign _ 4567							#underscore 95
sign ` 345							#96

# a - z					97 - 122	x0061 - x007A

punctuation { 12356			#123
sign  | 34				#124
punctuation } 23456			#125
sign ~ 2346			#126
sign  \x007F  456   #Delete


#--- Unicode latin
#sign  \x0080  8   #Control
#From \x0080 to \x009F control characters

space \x00A0 0				#no-break space
punctuation \x00A1  367   #Inverted exclamation mark
sign \x00A2  58						#cent sign
sign \x00A3 467 		#pound sign
sign \x00A4 4678 #¤ currency sign	x00A4
sign \x00A5 468 #¥ yen	sign			x00A5
sign  \x00A6  158   #Broken bar
sign \x00A7 357 #§ paragraph sign	x00A7
sign  \x00A8  48  #Diaeresis sign
sign \x00A9 123468 #© copyright			x00A9
sign  \x00AA  1258    #Feminine ordinal indicator
punctuation \x00AB 5678 # «		#left-pointing double quotation mark	x00AB
sign  \x00AC    25678   #Not sign
sign  \x00AD  368   #Soft hyphen
sign  \x00AE  12358   #Registered sign
sign  \x00AF  458   #Macron sign
sign \x00B0 4568 #° degree sign		x00B0
sign  \x00B1    23578   #Plus-Minus sign
sign \x00B2 128 #² 				#superscript 2 sign	x00B2
sign \x00B3 148 #³superscript 3 sign	x00B3
sign \x00B4 568			#acute accent
sign \x00B5 1348		#µ micro sign									x00B5
sign \x00B6 1458		#¶ pilcrow sign								x00B6
punctuation \x00B7  37    #Middle dot
sign \x00B8 68    #Cedilla
sign \x00B9 18    #¹ superscript 1 sign	x00B9
sign  \x00BA  2458    #Masculine ordinal indicator
punctuation \x00BB 4578 #»right-pointing double quotation mark		x00BB
sign \x00BC 1368 #¼ vulgar fraction one quarter	x00BC
sign \x00BD 12368 #½vulgar fraction one half	x00BD
sign \x00BE 13468 #¾ vulgar fraction 3 quarters	x00BE
punctuation \x00BF  38    #Inverted question mark

uppercase \x00C0 23678    #A with grave above
uppercase \x00C1  28    #A with acute above
uppercase \x00C2  167   #A with Circumflex
uppercase \x00C3  3467    #A with tilde 
uppercase \x00C4  567   #A with diaeresis
uppercase \x00C5   34567    #A with ring above
uppercase \x00C6  47    #AE
uppercase \x00C7  123467    #C with cedilla
uppercase \x00C8 3578   #E with grave above
uppercase \x00C9 1234567    #E with acute above
uppercase \x00CA  1267    #E with circumflex
uppercase \x00CB  2358    #E with diaeresis
uppercase \x00CC  57    #I with grave above
uppercase \x00CD  258   #I with acute
uppercase \x00CE  1467    #I with circumflex
uppercase \x00CF  23568   #I with diaeresis
uppercase \x00D0  3567    #ETH
uppercase \x00D1  2567    #N with tilde
uppercase \x00D2 578    #O with grave
uppercase	\x00D3  2568    #O with acute
uppercase \x00D4  14567   #O with circumflex
uppercase \x00D5  267   #O with tilde
uppercase \x00D6  358   #O with diaeresis
math \x00D7  23468   #Multiplication sign \x00d7
uppercase \x00D8  2467    #O with stroke
uppercase \x00D9 35678    #U with grave above
uppercase \x00DA 268    #U with acute above
uppercase \x00DB  1567    #U with circumflex
uppercase \x00DC  2368    #U with diaeresis
uppercase \x00DD  3568    #Y with acute
uppercase \x00DE  2357    #THORN
uppercase \x00DF  34568   #sharp s
lowercase \x00E0 123568				#a with grave
lowercase \x00E1  168   #a with acute
lowercase \x00E2  1678    #a with circumflex
lowercase \x00E3  34678   #a with tilde
lowercase \x00E4  3458    #a with diaeresis
lowercase \x00E5  345678    #a with ring above
lowercase \x00E6  478   #ae
lowercase \x00E7  1234678   #c with cedilla
lowercase \x00E8 23468			#e with grave
lowercase \x00E9 1234568		#e with acute
lowercase \x00EA  12678   #e with circumflex
lowercase \x00EB  12468   #e with diaeresis
lowercase \x00EC 348				#i with grave above
lowercase \x00ED  1468    #i withacute
lowercase \x00EE  14678   #i with circumflex
lowercase \x00EF  124568    #i with diaeresis
lowercase \x00F0  23458   #eth
lowercase \x00F1  13458   #n with tilde
lowercase \x00F2 3468			#o with grave above
lowercase \x00F3 14568    #o with acute
lowercase \x00F4  145678    #o with circumflex
lowercase \x00F5  1358    #o with tilde
lowercase \x00F6  2468    #o with diaeresis
math \x00F7 125678    #division sign x00f7
lowercase \x00F8  24678   #o with stroke
lowercase \x00F9 234567			#u with grave above
lowercase \x00FA 1568			#u with acute above
lowercase \x00FB  15678   #u with circumflex
lowercase \x00FC  12568   #u with diaeresis
lowercase \x00FD  24568   #y with acute
lowercase \x00FE  12348   #thorn
lowercase \x00FF  134568    #y with diaeresis

#--- Unicode Multilingual
uppercase \x0100    1678    #A with macron
lowercase	\x0101   168   #a with macron
uppercase	\x0102    1235678   #A with breve
lowercase	\x0103    123568    #a with breve
uppercase	\x0104    134568    #A with ogonek
lowercase \x0105 168    #a with ogonek
uppercase \x0106 14678    #C with acute
lowercase \x0107 1468   #c with acute
uppercase	\x0108    14678   #C with circumflex
lowercase	\x0109    1468    #c with circumflex
#uppercase \x010A  0   #C with dot above
#lowercase  \x010B      #c with dot above
uppercase	\x010C    14678   #C with caron
lowercase	\x010D    1468    #c with caron
#uppercase	\x010E       #D with caron
#lowercase	\x010F       #d with caron
uppercase \x0110   145678    #D with stroke
lowercase \x0111    14568   #d with stroke
uppercase \x0112    15678   #E with macron
lowercase \x0113    1568    #e with macron
uppercase	\x0118    12678    #E with ogonek
lowercase \x0119    1268    #e with ogonek
uppercase \x011C    1245678     #G with circumflex
lowercase \x011D    124568    #g with circumflex
uppercase \x0141  134568    #L with stroke
lowercase \x0142  1568    #l with stroke
uppercase \x0143  145678    #N with acute
lowercase \x0144  14568   #n with acute
uppercase \x0145 1345678   #N with cedilla
lowercase \x0146 134568    #n with cedilla
uppercase \x0150  1245678   #O with double acute
lowercase \x0151  124568    #o with double acute
uppercase \x0152  237   #ligature OE
lowercase \x0153  467   #ligature oe
uppercase \x0156  1235678   #R with cedilla
lowercase \x0157  123568    #r with cedilla
lowercase \x0159 2456    #r with caron
uppercase \x015A  134568    #S with acute
lowercase \x015B  134568    #s with acute
uppercase \x015C  234678    #S with circumflex
lowercase \x015D  23468    #s with cirumflex
uppercase \x015E  134568    #S with cedilla
lowercase \x015F  123468    #s with cedilla
uppercase \x0160  678   #S with caron
lowercase \x0161  1568    #s withcaron
uppercase \x0162  24678   #T with cedilla
lowercase \x0163  23458   #t with cedilla
uppercase \x0164  125678    #T with caron
lowercase \x0165  1256    #t with caron
uppercase \x016A  34678   #U wtih macron
lowercase \x016B  3468    #u with macron
uppercase \x016C  34678   #U with breve
lowercase \x016D  3468    #u with breve
lowercase \x016F  23456   #u with ring above
uppercase \x0170  2345678   #U with double acute
lowercase \x0171  234568    #u with double acute
uppercase \x0178  12345678    #Y with diaeresis
uppercase \x0179  134568    #Z with acute
lowercase \x017A 134568    #z with acute
uppercase \x017B  134568    #Z with dot above
lowercase \x017C  123468    #z with dot above
uppercase \x017D  12567   #Z with caron
lowercase \x017E  2346    #z with caron
lowercase \x0192 78   #f with hook
lowercase \x025C  13567   #reversed open e
sign  \x02C6  378   #circumflex accent
sign  \x02C7  134568    #caron
sign  \x02D8  134568    #breve
sign  \x02D9  5    #dot above
sign  \x02DB 134568    #ogonek
sign  \x02DC  2578    #small tilde

#--- Unicode Special Symbols
space	\x2002	0	   #EN space
space \x2003  0   #EM space
space	\x2004	0	  #THREE-PER-EM SPACE
space	\x2005	0	  #FOUR-PER-EM SPACE
space	\x2006	0	  #SIX-PER-EM SPACE
punctuation	\x2007	0	  #FIGURE SPACE
space	\x2008	0	  #PUNCTUATION SPACE
space	\x2009	0	  #THIN SPACE
space	\x200A	0	  #HAIR SPACE
sign  \x2011  36    #Non-breaking hyphen
sign  \x2013  368   #En dash
sign  \x2014  36    #EM dash
sign  \x2015  36    #Horizontal bar
sign  \x2017  36    #Double low line
sign  \x2018  6   #Left single quotation mark
sign  \x2019  6   #Right single quotation mark
sign  \x201A  3678    #Single low-9 quotation mark
sign  \x201C  4   #Left double quotation mark
sign  \x201D  4   #Right double quotation mark
sign  \x201E  1268  #Double low-9 quotation mark
sign  \x2020  134568    #Dagger
sign  \x2021  12458   #Double dagger
sign  \x2022  35    #Bullet
sign  \x2026  238   #Horizontal ellipsis
punctuation	\x202F	0	  #NARROW NO-BREAK SPACE
sign  \x2030  1345678   #Per mille sign
sign  \x2039  27    #Single left-pointing quotation mark
sign  \x203A  23567   #Single right-pointing quotation mark
space	\x205F	0	  #MEDIUM MATHEMATICAL SPACE
sign  \x207F  13467   #Superscript n
sign  \x20AC  457   #Euro sign
sign  \x20AF  145678    #Drachma sign
sign  \x2116  3456    #Number sign
sign  \x2122  1245678   #Trade mark sign
math  \x2219  48    #Bullet operator
math  \x221A  1467    #Square root
math  \x221E  234678    #Infinity
math  \x2229  578   #Intersection
math  \x2248  3578    #Almost equal to
math  \x2261  23568   #Identical to
math  \x2264  568   #Less-than or equal to
math  \x2265  458   #Greater-than or equal to
sign  \x2310  14567   #Reversed not sign
math  \x2320  347   #Top half integral
math  \x2321  1567    #Bottom half integral
sign  \x2500  67    #Box drawings light horizontal
sign  \x2502  237   #Box drawings light horizontal
sign  \x250C  257   #Box drawings light down and right
sign  \x2510  278   #Box drawings light down and left
sign \x2514 378   #Box drawings light up and right
sign  \x2518  678   #Box drawings light up and left
sign  \x251C  2367    #Box drawings light vertical and right
sign  \x2524  13568   #Box drawings light vertical and left
sign  \x252C  138 #Box drawings light down and horizontal
sign  \x2534  27    #Box drawings light up and horizontal
sign  \x2550  2578    #Box drawings double horizontal
sign  \x2551  1234568   #Box drawings double vertical
sign  \x2552  123468    #Box drawings down single and right double
sign  \x2553  1358    #Box drawings down double and right single
sign  \x2554  23567   #Box drawings double down and right
sign  \x2555  148   #Box drawings down single and left double
sign  \x2556  368   #Box drawings down double and left single
sign  \x2557  12458   #Box drawings double down left
sign  \x2558  248   #Box drawings up single and right double
sign  \x2559  1238    #Box drawings up double and right single
sign  \x255A  2378    #Box drawings double up and right
sign  \x255B  34678   #Box drawings up single and left double
sign  \x255C  4678    #Box drawings up double and left single
sign  \x255D  2678    #Box drawings double up and left
sign  \x255E  68    #Box drawings vertical single and right double
sign  \x255F  257   #Box drawings vertical double and right single
sign  \x2560  1248    #Box drawings vertical double and right
sign  \x2561  268   #Box drawings vertical single and left double
sign  \x2562  24568   #Box drawings vertical double and left single
sign  \x2563  123567    #Box drawings double vertical and left
sign  \x2564  3467    #Box drawings down single and horizontal double
sign  \x2565  28    #Box drawings down double and horizontal single
sign  \x2566  123458    #Box drawings double down and horizontal
sign  \x2567  167   #Box drawings up single and horizontal double
sign  \x2568  57    #Box drawings up double and horizontal single
sign  \x2569  8   #Box drawings double up and horizontal
sign  \x256A  3567  #Box drawings vertical single and horizontal double
sign  \x256B  12358   #Box drawings vertical double and horizontal single
sign  \x256C  5678    #Box drawings double vertical and horizontal
sign  \x2580 234567    #Upper half block
sign  \x2584 1267    #Lower half block
sign  \x2588 12345678   #Full block
sign  \x258C  23678   #Left half block
sign  \x2590  35678   #Right half block
sign  \x2591  78    #Light shade
sign  \x2592  3678    #Medium shade
sign  \x2593  235678    #Dark shade
sign  \x25A0  1234567   #Black square
sign  \x25AA  5678   #black small square
sign  \x25B6  456-135   #Black right-pointing triangle
sign  \x25CF  35    #Black circle
sign  \x25E6  35    #White bullet
sign  \x2665  56-146    #heart
sign  \x2713  3678    #check mark
sign  \x2714  235678    #Heavy check mark
sign  \x2794  25-25-135    #right arrow
sign  \x2190  25-25-246    #left arrow
sign  \x2192  25-25-246    #left arrow
sign  \x25B7  456-135    #white right-pointing triangle
sign  \xF0B7  35    #bullet
sign  \xFB00  124-124    #latin small ligature


#--- Unicode Greek  (revisione)
sign  \x0374  3456   #GREEK UPPER NUMERAL SIGN Dexia keraia
sign  \x0375  5678   #GREEK LOWER NUMERAL SIGN Aristeri keraia
punctuation  \x037E  26   #GREEK QUESTION MARK
sign  \x0384  4   #GREEK TONOS
sign  \x0385  45   #GREEK DIALYTIKA TONOS
uppercase  \x0386  34578   #Greek letter alpha with tonos
sign  \x0387  467   #GREEK ANO TELEIA
uppercase  \x0388  12467   #Greek letter epsilon with tonos
uppercase  \x0389  1234567   #Greek letter eta with tonos
uppercase  \x038A  124567   #Greek letter iota with tonos
uppercase  \x038C  24678  #Greek letter omicron with tonos
uppercase  \x038E  12567   #Greek letter upsilon with tonos
uppercase  \x038F  2457   #Greek letter omega with tonos
lowercase  \x0390  248   #GREEK SMALL LETTER IOTA WITH DIALYTIKA AND TONOS
uppercase  \x0391  17   #GREEK CAPITAL LETTER ALPHA
uppercase  \x0392  127   #GREEK CAPITAL LETTER BETA
uppercase  \x0393  12457   #GREEK CAPITAL LETTER GAMMA
uppercase  \x0394  1457   #GREEK CAPITAL LETTER DELTA
uppercase  \x0395  157   #GREEK CAPITAL LETTER EPSILON
uppercase  \x0396  13567   #GREEK CAPITAL LETTER ZETA
uppercase  \x0397  1567   #GREEK CAPITAL LETTER ETA
uppercase  \x0398  14567   #GREEK CAPITAL LETTER THETA
uppercase  \x0399  24   #GREEK CAPITAL LETTER IOTA
uppercase  \x039A  137   #GREEK CAPITAL LETTER KAPPA
uppercase  \x039B  1237   #GREEK CAPITAL LETTER LAMDA
uppercase  \x039C  1347   #GREEK CAPITAL LETTER MU
uppercase  \x039D  13457   #GREEK CAPITAL LETTER NU
uppercase  \x039E  13467   #GREEK CAPITAL LETTER XI
uppercase  \x039F  1357   #GREEK CAPITAL LETTER OMICRON
uppercase  \x03A0  12347   #GREEK CAPITAL LETTER PI
uppercase  \x03A1  12357   #GREEK CAPITAL LETTER RHO
uppercase  \x03A3  2347   #GREEK CAPITAL LETTER SIGMA
uppercase \x03A4  23457   #GREEK CAPITAL LETTER TAU
uppercase  \x03A5  1367   #GREEK CAPITAL LETTER UPSILON
uppercase  \x03A6  1247   #GREEK CAPITAL LETTER PHI
uppercase  \x03A7  123467   #GREEK CAPITAL LETTER CHI
uppercase  \x03A8  134567   #GREEK CAPITAL LETTER PSI
uppercase  \x03A9  24567   #GREEK CAPITAL LETTER OMEGA
uppercase  \x03AA  2478   #GREEK CAPITAL LETTER IOTA WITH DIALYTIKA
uppercase  \x03AB  1345678   #GREEK CAPITAL LETTER UPSILON WITH DIALYTIKA
lowercase  \x03AC  345   #Greek letter alpha with tonos
lowercase  \x03AD  1246   #Greek letter epsilon with tonos
lowercase  \x03AE  123456   #Greek letter eta with tonos
lowercase  \x03AF  12456   #Greek letter iota with tonos
lowercase  \x03B0  134568   #GREEK SMALL LETTER UPSILON WITH DIALYTIKA
lowercase  \x03B1  1   #GREEK SMALL LETTER ALPHA
lowercase  \x03B2  12   #GREEK SMALL LETTER BETA
lowercase  \x03B3  1245   #GREEK SMALL LETTER GAMMA
lowercase  \x03B4  145   #GREEK SMALL LETTER DELTA
lowercase  \x03B5  15   #GREEK SMALL LETTER EPSILON
lowercase  \x03B6  1356   #GREEK SMALL LETTER ZETA
lowercase  \x03B7  156   #GREEK SMALL LETTER ETA
lowercase  \x03B8  1456   #GREEK SMALL LETTER THETA
lowercase  \x03B9  24   #GREEK SMALL LETTER IOTA
lowercase  \x03BA  13   #GREEK SMALL LETTER KAPPA
lowercase  \x03BB  123   #GREEK SMALL LETTER LAMDA
lowercase  \x03BC  134   #GREEK SMALL LETTER MU
lowercase  \x03BD  1345   #GREEK SMALL LETTER NU
lowercase  \x03BE  1346   #GREEK SMALL LETTER XI
lowercase  \x03BF  135   #GREEK SMALL LETTER OMICRON
lowercase  \x03C0  1234   #GREEK SMALL LETTER PI
lowercase  \x03C1  1235   #GREEK SMALL LETTER RHO
lowercase  \x03C2  234   #GREEK SMALL LETTER FINAL SIGMA
lowercase  \x03C3  234   #GREEK SMALL LETTER FINAL SIGMA
lowercase  \x03C4  2345   #GREEK SMALL LETTER TAU
lowercase  \x03C5  136   #GREEK SMALL LETTER UPSILON
lowercase  \x03C6  124   #GREEK SMALL LETTER PHI
lowercase  \x03C7  12346   #GREEK SMALL LETTER CHI
lowercase  \x03C8  13456   #GREEK SMALL LETTER PSI
lowercase  \x03C9  2456   #GREEK SMALL LETTER OMEGA
lowercase  \x03CA  348   #GREEK SMALL LETTER IOTA WITH DIALYTIKA
lowercase  \x03CB  234568   #GREEK SMALL LETTER UPSILON WITH DIALYTIKA
lowercase  \x03CC  246   #Greek letter omicron with tonos
lowercase  \x03CD  1256   #Greek letter upsilon with tonos
lowercase  \x03CE  245   #Greek letter omega with tonos
sign  \x03D0  1278   #GREEK BETA SYMBOL
sign  \x03D1  145678   #GREEK THETA SYMBOL α
letter  \x03D2  12368   #GREEK UPSILON WITH HOOK SYMBOL
letter  \x03D3  23456   #GREEK UPSILON WITH ACUTE AND HOOK SYMBOL
letter  \x03D4  1368   #GREEK UPSILON WITH DIAERESIS AND HOOK SYMBOL
sign  \x03D5  12478   #GREEK PHI SYMBOL
sign  \x03D6  123478   #GREEK PI SYMBOL
sign  \x03D7  12346   #GREEK KAI SYMBOL
uppercase  \x03D8  1234578   #GREEK LETTER ARCHAIC KOPPA
lowercase  \x03D9  123458   #GREEK SMALL LETTER ARCHAIC KOPPA
uppercase  \x03DA  123678   #GREEK CAPITAL LETTER STIGMA
lowercase  \x03DB  12368   #GREEK SMALL LETTER STIGMA
uppercase  \x03DC  145678   #GREEK CAPITAL LETTER DIGAMMA
lowercase  \x03DD  12368   #GREEK SMALL LETTER DIGAMMA
uppercase  \x03DE  1234578   #GREEK CAPITAL LETTER KOPPA
lowercase  \x03DF  123458   #GREEK SMALL LETTER KOPPA
uppercase  \x03E0  234678   #GREEK CAPITAL LETTER SAMPI
lowercase  \x03E1  23468   #GREEK SMALL LETTER SAMPI
sign  \x03F0  1234578   #GREEK KAPPA SYMBOL
sign  \x03F1  123578   #GREEK RHO SYMBOL
sign  \x03F2  23478   #GREEK LUNATE SIGMA SYMBOL
sign  \x03F4  145678   #GREEK CAPITAL THETA SYMBOL
sign  \x03F5  1578   #GREEK LUNATE EPSILON SYMBOL
uppercase  \x03FA  234678   #GREEK CAPITAL LETTER SAN
lowercase  \x03FB  23468   #GREEK SMALL LETTER SAN

include gr-pl-comp8.uti

#--- Unicode Cyrillic
uppercase \x0401 1678   #CYRILLIC CAPITAL LETTER IO
uppercase \x0404 34578    #CYRILLIC CAPITAL LETTER UKRAINIAN IE
uppercase \x0406 1345678    #CYRILLIC CAPITAL LETTER BYELORUSSIAN-UKRAINIAN I
uppercase \x0407 145678   #CYRILLIC CAPITAL LETTER YI
uppercase \x0410 178   #CYRILLIC CAPITAL LETTER A
uppercase \x0411 1278  #CYRILLIC CAPITAL LETTER BE
uppercase \x0412 245678  #CYRILLIC CAPITAL LETTER VE
uppercase \x0413 124578   #CYRILLIC CAPITAL LETTER GHE
uppercase \x0414 14578    #CYRILLIC CAPITAL LETTER DE
uppercase \x0415 157    #CYRILLIC CAPITAL LETTER IE
uppercase \x0416 24578   #CYRILLIC CAPITAL LETTER ZHE
uppercase \x0417 135678   #CYRILLIC CAPITAL LETTER ZE
uppercase \x0418 2478    #CYRILLIC CAPITAL LETTER I
uppercase \x0419 1234678    #CYRILLIC CAPITAL LETTER SHORT I
uppercase \x041A 1378   #CYRILLIC CAPITAL LETTER KA
uppercase \x041B 12378    #CYRILLIC CAPITAL LETTER EL
uppercase \x041C 13478    #CYRILLIC CAPITAL LETTER EM
uppercase \x041D 134578   #CYRILLIC CAPITAL LETTER EN
uppercase \x041E 13578    #CYRILLIC CAPITAL LETTER O
uppercase \x041F 123478   #CYRILLIC CAPITAL LETTER PE
uppercase \x0420 123578   #CYRILLIC CAPITAL LETTER ER
uppercase \x0421 23478   #CYRILLIC CAPITAL LETTER ES
uppercase \x0422 234578   #CYRILLIC CAPITAL LETTER TE
uppercase \x0423 13678    #CYRILLIC CAPITAL LETTER U
uppercase \x0424 12478    #CYRILLIC CAPITAL LETTER EF
uppercase \x0425 12578    #CYRILLIC CAPITAL LETTER HA
uppercase \x0426 1478   #CYRILLIC CAPITAL LETTER TSE
uppercase \x0427 1234578    #CYRILLIC CAPITAL LETTER CHE
uppercase \x0428 15678    #CYRILLIC CAPITAL LETTER SHA
uppercase \x0429 134678   #CYRILLIC CAPITAL LETTER SHCHA
uppercase \x042A 1235678    #CYRILLIC CAPITAL LETTER HARD SIGN
uppercase \x042B 234678   #CYRILLIC CAPITAL LETTER YERU
uppercase \x042C 2345678    #CYRILLIC CAPITAL LETTER SOFT SIGN
uppercase \x042D 24678    #CYRILLIC CAPITAL LETTER E
uppercase \x042E 125678     #CYRILLIC CAPITAL LETTER YU
uppercase \x042F 124678   #CYRILLIC CAPITAL LETTER YA
lowercase \x0430 18   #CYRILLIC SMALL LETTER A
lowercase \x0431 128    #CYRILLIC SMALL LETTER BE
lowercase \x0432 24568   #CYRILLIC SMALL LETTER VE
lowercase \x0433 12458    #CYRILLIC SMALL LETTER GHE
lowercase \x0434 1458   #CYRILLIC SMALL LETTER DE
lowercase \x0435 158    #CYRILLIC SMALL LETTER IE
lowercase \x0436 2458   #CYRILLIC SMALL LETTER ZHE
lowercase \x0437 13568   #CYRILLIC SMALL LETTER ZE
lowercase \x0438 248    #CYRILLIC SMALL LETTER I
lowercase \x0439 123468   #CYRILLIC SMALL LETTER SHORT I
lowercase \x043A 138   #CYRILLIC SMALL LETTER KA
lowercase \x043B 1238   #CYRILLIC SMALL LETTER EL
lowercase \x043C 1348   #CYRILLIC SMALL LETTER EM
lowercase \x043D 13458   #CYRILLIC SMALL LETTER EN
lowercase \x043E 1358   #CYRILLIC SMALL LETTER O
lowercase \x043F 12348   #CYRILLIC SMALL LETTER PE
lowercase \x0440 12358    #CYRILLIC SMALL LETTER ER
lowercase \x0441 2348   #CYRILLIC SMALL LETTER ES
lowercase \x0442 23458   #CYRILLIC SMALL LETTER TE
lowercase \x0443 1368   #CYRILLIC SMALL LETTER U
lowercase \x0444 1248   #CYRILLIC SMALL LETTER EF
lowercase \x0445 1258   #CYRILLIC SMALL LETTER HA
lowercase \x0446 148   #CYRILLIC SMALL LETTER TSE
lowercase \x0447 123458   #CYRILLIC SMALL LETTER CHE
lowercase \x0448 1568   #CYRILLIC SMALL LETTER SHA
lowercase \x0449 13468    #CYRILLIC SMALL LETTER SHCHA
lowercase \x044A 123568   #CYRILLIC SMALL LETTER HARD SIGN
lowercase \x044B 23468    #CYRILLIC SMALL LETTER YERU
lowercase \x044C 234568   #CYRILLIC SMALL LETTER SOFT SIGN
lowercase \x044D 2468   #CYRILLIC SMALL LETTER E
lowercase \x044E 12568    #CYRILLIC SMALL LETTER YU
lowercase \x044F 12468    #CYRILLIC SMALL LETTER YA
lowercase \x0451 168    #CYRILLIC SMALL LETTER IO
lowercase \x0452 1468   #CYRILLIC SMALL LETTER DJE Serbocroatian
lowercase \x0454 3458   #CYRILLIC SMALL LETTER UKRAINIAN IE
lowercase \x0455 12368    #CYRILLIC SMALL LETTER DZE
lowercase \x0456 134568   #CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I
lowercase \x0457 14568    #CYRILLIC SMALL LETTER YI
lowercase \x0458 3458   #CYRILLIC SMALL LETTER JE
lowercase \x0459 1268   #CYRILLIC SMALL LETTER LJE
lowercase \x045A 12468    #CYRILLIC SMALL LETTER NJE
lowercase \x045B 1468   #CYRILLIC SMALL LETTER TSHE Serbocroatian
lowercase \x045E 3468   #CYRILLIC SMALL LETTER SHORT U
uppercase \x0462 3457		#CYRILLIC CAPITAL LETTER YAT
lowercase \x0463 3458   #CYRILLIC SMALL LETTER YAT
lowercase \x0467 18   #CYRILLIC SMALL LETTER LITTLE YUS
uppercase \x046A 2467		#CYRILLIC CAPITAL LETTER BIG YUS
lowercase \x046B 124568   #CYRILLIC SMALL LETTER BIG YUS
lowercase \x0479 3468   #CYRILLIC SMALL LETTER UK DIGRAPH
sign \x0484 478    #CYRILLIC NON-SPACING PALATALIZATION
uppercase \x0490 1245678    #CYRILLIC CAPITAL LETTER GHE WITH UPTURN
lowercase \x0491 124568   #CYRILLIC SMALL LETTER GHE WITH UPTURN
lowercase \x04A3 13458    #CYRILLIC SMALL LETTER EN WITH DESCENDER
lowercase \x04AF 12568    #CYRILLIC SMALL LETTER STRAIGHT U
lowercase \x04BB 128    #CYRILLIC SMALL LETTER SHHA
lowercase \x04D9 2468   #CYRILLIC SMALL LETTER SCHWA

#---- Hebrew Unicode
punctuation	\x05B0	3	#HEBREW POINT SHEVA
punctuation	\x05B1	26	#HEBREW POINT HATAF SEGOL
punctuation	\x05B2	25	#HEBREW POINT HATAF PATAH
punctuation	\x05B3	345	#HEBREW POINT HATAF QAMATS
punctuation	\x05B4	24	#HEBREW POINT HIRIQ
punctuation	\x05B5	34	#HEBREW POINT TSERE
punctuation	\x05B6	15	#HEBREW POINT SEGOL
punctuation	\x05B7	14	#HEBREW POINT PATAH
punctuation	\x05B8	126	#HEBREW POINT QAMATS
punctuation	\x05B9	135	#HEBREW POINT HOLAM
punctuation	\x05BB	136	#HEBREW POINT QUBUTS
punctuation	\x05BC	5	#HEBREW POINT DAGESH OR MAPIQ 
punctuation	\x05BD	4	#HEBREW POINT METEG
punctuation	\x05C1	1568	#HEBREW POINT SHIN DOT
punctuation	\x05C2	2348	#HEBREW POINT SIN DOT
letter	\x05D0	1	#HEBREW LETTER ALEF
letter	\x05D1	1236	#HEBREW LETTER BET
letter	\x05D2	1245	#HEBREW LETTER GIMEL
letter	\x05D3	145	#HEBREW LETTER DALET
letter	\x05D4	125	#HEBREW LETTER HE
letter	\x05D5	2456	#HEBREW LETTER VAV
letter	\x05D6	1356	#HEBREW LETTER ZAYIN
letter	\x05D7	1346	#HEBREW LETTER HET
letter	\x05D8	2345	#HEBREW LETTER TET
letter	\x05D9	245	#HEBREW LETTER YOD
letter	\x05DA	16	#HEBREW LETTER FINAL KAF
letter	\x05DB	16	#HEBREW LETTER KAF
letter	\x05DC	123	#HEBREW LETTER LAMED
letter	\x05DD	134	#HEBREW LETTER FINAL MEM
letter	\x05DE	134	#HEBREW LETTER MEM
letter	\x05DF	1345	#HEBREW LETTER FINAL NUN
letter	\x05E0	1345	#HEBREW LETTER NUN
letter	\x05E1	234	#HEBREW LETTER SAMEKH
letter	\x05E2	1246	#HEBREW LETTER AYIN
letter	\x05E3	124	#HEBREW LETTER FINAL PE
letter	\x05E4	124	#HEBREW LETTER PE
letter	\x05E5	2346	#HEBREW LETTER FINAL TSADI
letter	\x05E6	2346	#HEBREW LETTER TSADI
letter	\x05E7	12345	#HEBREW LETTER QOF
letter	\x05E8	1235	#HEBREW LETTER RESH
letter	\x05E9	146	#HEBREW LETTER SHIN
letter	\x05EA	1456	#HEBREW LETTER TAV
letter	\xFB1D	35   #HEBREW LETTER YOD WITH HIRIQ
letter	\xFB2A	146	  #HEBREW LETTER SHIN WITH SHIN DOT
letter	\xFB2B	156	  #HEBREW LETTER SHIN WITH SIN DOT
letter	\xFB31	12	#HEBREW LETTER BET WITH DAGESH
letter	\xFB35	346	#HEBREW LETTER VAV WITH DAGESH
letter	\xFB3A	13	#HEBREW LETTER FINAL KAF WITH DAGESH
letter	\xFB3B	13	#HEBREW LETTER KAF WITH DAGESH
letter	\xFB43	1234	#HEBREW LETTER FINAL PE WITH DAGESH
letter	\xFB44	1234	#HEBREW LETTER PE WITH DAGESH
letter	\xFB4A	1256	#HEBREW LETTER TAV WITH DAGESH

#---- Special Signs
sign \xFEFF 0   #Zero width no-break Space
include braille-patterns.cti

