#--------------------------------------------------------------------
# Copyright (c) 1999-2001, International Business Machines
# Corporation and others.  All Rights Reserved.
#--------------------------------------------------------------------
# THIS IS A MACHINE-GENERATED FILE
# Tool: dumpICUrules.bat
# Source: \u005cicu4j\u005csrc\u005ccom\u005cibm\u005ctext\u005cresources/Transliterator_Malayalam_InterIndic.utf8.txt
# Date: Thu Mar  1 20:03:55 2001
#--------------------------------------------------------------------
# Malayalam_InterIndic
#--------------------------------------------------------------------
# Copyright (c) 1999-2001, International Business Machines
# Corporation and others.  All Rights Reserved.
#--------------------------------------------------------------------
# Date: Tue Jan 23 12:42:06 2001
#--------------------------------------------------------------------
# Malayalam-InterIndic
#:: NFD (NFC) ;

\u0D02>\uE002;      # SIGN ANUSVARA
\u0D03>\uE003;      # SIGN VISARGA
\u0D05>\uE005;      # LETTER A
\u0D06>\uE006;      # LETTER AA
\u0D07>\uE007;      # LETTER I
\u0D08>\uE008;      # LETTER II
\u0D09>\uE009;      # LETTER U
\u0D0A>\uE00A;      # LETTER UU
\u0D0B>\uE00B;      # LETTER VOCALIC R
\u0D0C>\uE00C;      # LETTER VOCALIC L
\u0D0E>\uE00E;      # LETTER E
\u0D0F>\uE00F;      # LETTER EE
\u0D10>\uE010;      # LETTER AI
\u0D12>\uE012;      # LETTER O
\u0D13>\uE013;      # LETTER OO
\u0D14>\uE014;      # LETTER AU
\u0D15>\uE015;      # LETTER KA
\u0D16>\uE016;      # LETTER KHA
\u0D17>\uE017;      # LETTER GA
\u0D18>\uE018;      # LETTER GHA
\u0D19>\uE019;      # LETTER NGA
\u0D1A>\uE01A;      # LETTER CA
\u0D1B>\uE01B;      # LETTER CHA
\u0D1C>\uE01C;      # LETTER JA
\u0D1D>\uE01D;      # LETTER JHA
\u0D1E>\uE01E;      # LETTER NYA
\u0D1F>\uE01F;      # LETTER TTA
\u0D20>\uE020;      # LETTER TTHA
\u0D21>\uE021;      # LETTER DDA
\u0D22>\uE022;      # LETTER DDHA
\u0D23>\uE023;      # LETTER NNA
\u0D24>\uE024;      # LETTER TA
\u0D25>\uE025;      # LETTER THA
\u0D26>\uE026;      # LETTER DA
\u0D27>\uE027;      # LETTER DHA
\u0D28>\uE028;      # LETTER NA
\u0D2A>\uE02A;      # LETTER PA
\u0D2B>\uE02B;      # LETTER PHA
\u0D2C>\uE02C;      # LETTER BA
\u0D2D>\uE02D;      # LETTER BHA
\u0D2E>\uE02E;      # LETTER MA
\u0D2F>\uE02F;      # LETTER YA
\u0D30>\uE030;      # LETTER RA
\u0D31>\uE031;      # LETTER RRA
\u0D32>\uE032;      # LETTER LA
\u0D33>\uE033;      # LETTER LLA
\u0D34>\uE034;      # LETTER LLLA
\u0D35>\uE035;      # LETTER VA
\u0D36>\uE036;      # LETTER SHA
\u0D37>\uE037;      # LETTER SSA
\u0D38>\uE038;      # LETTER SA
\u0D39>\uE039;      # LETTER HA
\u0D3E>\uE03E;      # VOWEL SIGN AA
\u0D3F>\uE03F;      # VOWEL SIGN I
\u0D40>\uE040;      # VOWEL SIGN II
\u0D41>\uE041;      # VOWEL SIGN U
\u0D42>\uE042;      # VOWEL SIGN UU
\u0D43>\uE043;      # VOWEL SIGN VOCALIC R
\u0D46>\uE046;      # VOWEL SIGN E
\u0D47>\uE047;      # VOWEL SIGN EE
\u0D48>\uE048;      # VOWEL SIGN AI
\u0D4D>\uE04D;      # SIGN VIRAMA
\u0D57>\uE057;      # AU LENGTH MARK
\u0D60>\uE060;      # LETTER VOCALIC RR
\u0D61>\uE061;      # LETTER VOCALIC LL
\u0D66>\uE066;      # DIGIT ZERO
\u0D67>\uE067;      # DIGIT ONE
\u0D68>\uE068;      # DIGIT TWO
\u0D69>\uE069;      # DIGIT THREE
\u0D6A>\uE06A;      # DIGIT FOUR
\u0D6B>\uE06B;      # DIGIT FIVE
\u0D6C>\uE06C;      # DIGIT SIX
\u0D6D>\uE06D;      # DIGIT SEVEN
\u0D6E>\uE06E;      # DIGIT EIGHT
\u0D6F>\uE06F;      # DIGIT NINE
#    :: NFC (NFD) ;
# eof
