#--------------------------------------------------------------------
# Copyright (c) 1999-2001, International Business Machines
# Corporation and others. All Rights Reserved.
#--------------------------------------------------------------------
# $Source: /xsrl/Nsvn/icu/icu4j/src/com/ibm/icu/impl/data/Attic/Transliterator_InterIndic_Malayalam.txt,v $
# $Date: 2002/09/19 18:11:23 $
# $Revision: 1.9 $
#--------------------------------------------------------------------

# InterIndic-Malayalam
#:: NFD (NFC) ;
\ue001>\u0d02; # REMAP (indicExceptions.txt): \u0d01>\u0d02 = SIGN CANDRABINDU>SIGN ANUSVARA
\ue002>\u0d02; # SIGN ANUSVARA
\ue003>\u0d03; # SIGN VISARGA
\ue005>\u0d05; # LETTER A
\ue006>\u0d06; # LETTER AA
\ue007>\u0d07; # LETTER I
\ue008>\u0d08; # LETTER II
\ue009>\u0d09; # LETTER U
\ue00a>\u0d0a; # LETTER UU
\ue00b>\u0d0b; # LETTER VOCALIC R
\ue00c>\u0d0c; # LETTER VOCALIC L
\ue00d>\u0d0e; # FALLLBACK LETTER E
\ue00e>\u0d0e; # LETTER E
\ue00f>\u0d0f; # LETTER EE
\ue010>\u0d10; # LETTER AI
\ue011>\u0d12; # FALLBACK TO O
\ue012>\u0d12; # LETTER O
\ue013>\u0d13; # LETTER OO
\ue014>\u0d14; # LETTER AU
\ue015>\u0d15; # LETTER KA
\ue016>\u0d16; # LETTER KHA
\ue017>\u0d17; # LETTER GA
\ue018>\u0d18; # LETTER GHA
\ue019>\u0d19; # LETTER NGA
\ue01a>\u0d1a; # LETTER CA
\ue01b>\u0d1b; # LETTER CHA
\ue01c>\u0d1c; # LETTER JA
\ue01d>\u0d1d; # LETTER JHA
\ue01e>\u0d1e; # LETTER NYA
\ue01f>\u0d1f; # LETTER TTA
\ue020>\u0d20; # LETTER TTHA
\ue021>\u0d21; # LETTER DDA
\ue022>\u0d22; # LETTER DDHA
\ue023>\u0d23; # LETTER NNA
\ue024>\u0d24; # LETTER TA
\ue025>\u0d25; # LETTER THA
\ue026>\u0d26; # LETTER DA
\ue027>\u0d27; # LETTER DHA
\ue028>\u0d28; # LETTER NA
\ue029>\u0d28; # REMAP (indicExceptions.txt): \u0d29>\u0d28 = LETTER NNNA>LETTER NA
\ue02a>\u0d2a; # LETTER PA
\ue02b>\u0d2b; # LETTER PHA
\ue02c>\u0d2c; # LETTER BA
\ue02d>\u0d2d; # LETTER BHA
\ue02e>\u0d2e; # LETTER MA
\ue02f>\u0d2f; # LETTER YA
\ue030\ue03c>\u0d31;
\ue030>\u0d30; # LETTER RA
\ue031>\u0d31; # LETTER RRA
\ue032>\u0d32; # LETTER LA
\ue033\ue03c>\u0d34;
\ue033>\u0d33; # LETTER LLA
\ue034>\u0d34; # LETTER LLLA
\ue035>\u0d35; # LETTER VA
\ue036>\u0d36; # LETTER SHA
\ue037>\u0d37; # LETTER SSA
\ue038>\u0d38; # LETTER SA
\ue039>\u0d39; # LETTER HA

\ue03c>; # FALLBACK BLOW AWAY NUKTA
\ue03d>; # FALLBACK BLOW AWAY AVAGRAHA

\ue03e>\u0d3e; # VOWEL SIGN AA
\ue03f>\u0d3f; # VOWEL SIGN I
\ue040>\u0d40; # VOWEL SIGN II
\ue041>\u0d41; # VOWEL SIGN U
\ue042>\u0d42; # VOWEL SIGN UU
\ue043>\u0d43; # VOWEL SIGN VOCALIC R
\ue044>; # FALLBACK BLOW AWAY VOWEL SIGN VOCALIC RR
\ue045>\u0d3e; # REMAP (indicExceptions.txt): \u0d45>\u0d3e = VOWEL SIGN CANDRA E>VOWEL SIGN AA
\ue046>\u0d46; # VOWEL SIGN E
\ue047>\u0d47; # VOWEL SIGN EE
\ue048>\u0d48; # VOWEL SIGN AI
\ue049>\u0d4b; # REMAP (indicExceptions.txt): \u0d49>\u0d4b = VOWEL SIGN CANDRA O>VOWEL SIGN OO
\ue04a>\u0d4a; # VOWEL SIGN O
\ue04b>\u0d4b; # VOWEL SIGN OO
\ue04c>\u0d4c; # VOWEL SIGN AU
\ue04d>\u0d4d; # SIGN VIRAMA
\ue050>\u0d13\u0d02; # UNMAPPED InterIndic-Malayalam: OM
\ue051>;
\ue052>;
\ue053>;
\ue054>;
\ue055>; # FALLBACK BLOW AWAY LENGTH MARK
\ue056>\u0d48; # REMAP (indicExceptions.txt): \u0d56>\u0d48 = AI LENGTH MARK>VOWEL SIGN AI
\ue057>\u0d57; # AU LENGTH MARK
\ue058>\u0d15; # FALLBACK
\ue059>\u0d16; # REMAP (indicExceptions.txt): \u0d59>\u0d16 = LETTER KHHA>LETTER KHA
\ue05a>\u0d17; # REMAP (indicExceptions.txt): \u0d5a>\u0d17 = LETTER GHHA>LETTER GA
\ue05b>\u0d1c; # REMAP (indicExceptions.txt): \u0d5b>\u0d1c = LETTER ZA>LETTER JA
\ue05d>\u0d22; # REMAP (indicExceptions.txt): \u0d5d>\u0d22 = LETTER RHA>LETTER DDHA
\ue05c>\u0d21; # FALLBACK
\ue05e>\u0d2b; # REMAP (indicExceptions.txt): \u0d5e>\u0d2b = LETTER FA>LETTER PHA
\ue05f>\u0d2f; # REMAP (indicExceptions.txt): \u0d5f>\u0d2f = LETTER YYA>LETTER YA
\ue060>\u0d60; # LETTER VOCALIC RR
\ue061>\u0d61; # LETTER VOCALIC LL
\ue062>; # FALLBACK BLOW AWAY VOWEL SIGN VOCALIC L
\ue063>; # FALLBACK BLOW AWAY VOWEL SIGN VOCALIC LL
\ue064>'.'   ; # FALLBACK FOR DANDA
\ue065>'.'   ; # FALLBACK FOR DOUBLE DANDA      
\ue066>\u0d66; # DIGIT ZERO
\ue067>\u0d67; # DIGIT ONE
\ue068>\u0d68; # DIGIT TWO
\ue069>\u0d69; # DIGIT THREE
\ue06a>\u0d6a; # DIGIT FOUR
\ue06b>\u0d6b; # DIGIT FIVE
\ue06c>\u0d6c; # DIGIT SIX
\ue06d>\u0d6d; # DIGIT SEVEN
\ue06e>\u0d6e; # DIGIT EIGHT
\ue06f>\u0d6f; # DIGIT NINE
\ue070>;       # ABBREVIATION SIGN
\ue071>\u0d30; # LETTER RA WITH MIDDLE DIAGONAL
\ue072>\u0d30; # LETTER RA WITH LOWER DIAGONAL
\ue073>;       # RUPEE MARK
\ue074>;       # RUPEE SIGN
\ue075>;       # CURRENCY NUMERATOR ONE
\ue076>;       # CURRENCY NUMERATOR TWO
\ue077>;       # CURRENCY NUMERATOR THREE
\ue078>;       # CURRENCY NUMERATOR FOUR
\ue079>;       # CURRENCY NUMERATOR ONE LESS THAN THE DENOMINATOR
\ue07A>;       # CURRENCY DENOMINATOR SIXTEEN
\ue07B>;       # ISSHAR
\uE07C>;       # TIPPI
\uE07D>;       # ADDAK
\uE07E>;       # IRI
\uE07F>;       # URA
\uE080>;       # EK ONKAR

0 > \u0d66;       # FALLBACK FOR TAMIL
1 > \u0d67;

#    :: NFC (NFD) ;
# eof
