#--------------------------------------------------------------------
# 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_Gurmukhi_InterIndic.utf8.txt
# Date: Thu Mar  1 20:03:54 2001
#--------------------------------------------------------------------
# Gurmukhi_InterIndic
#--------------------------------------------------------------------
# Copyright (c) 1999-2001, International Business Machines
# Corporation and others.  All Rights Reserved.
#--------------------------------------------------------------------
# Date: Tue Jan 23 12:41:58 2001
#--------------------------------------------------------------------
# Gurmukhi-InterIndic
#:: NFD (NFC) ;

#\u0A16\u0A3C>\uE059; # LETTER KHHA
#\u0A17\u0A3C>\uE05A; # LETTER GHHA
#\u0A1C\u0A3C>\uE05B; # LETTER ZA
#\u0A38\u0A3C>\uE036; # LETTER SHA
#\u0A32\u0A3C>\uE033; # LETTER LLA
#\u0A2B\u0A3C>\uE05E; # LETTER FA

\u0A02>\uE001;  # REMAP (indicExceptions.txt): \u0a01>\u0a02 = SIGN CANDRABINDU>SIGN BINDI
\u0A05>\uE005;  # LETTER A
\u0A06>\uE006;  # LETTER AA
\u0A07>\uE007;  # LETTER I
\u0A08>\uE008;  # LETTER II
\u0A09>\uE009;  # LETTER U
\u0A0A>\uE00A;  # LETTER UU
\u0A0F>\uE00F;  # LETTER EE
\u0A10>\uE010;  # LETTER AI
\u0A13>\uE013;  # LETTER OO
\u0A14>\uE014;  # LETTER AU
\u0A15>\uE015;  # LETTER KA
\u0A16>\uE016;  # LETTER KHA
\u0A17>\uE017;  # LETTER GA
\u0A18>\uE018;  # LETTER GHA
\u0A19>\uE019;  # LETTER NGA
\u0A1A>\uE01A;  # LETTER CA
\u0A1B>\uE01B;  # LETTER CHA
\u0A1C>\uE01C;  # LETTER JA
\u0A1D>\uE01D;  # LETTER JHA
\u0A1E>\uE01E;  # LETTER NYA
\u0A1F>\uE01F;  # LETTER TTA
\u0A20>\uE020;  # LETTER TTHA
\u0A21>\uE021;  # LETTER DDA
\u0A22>\uE022;  # LETTER DDHA
\u0A23>\uE023;  # LETTER NNA
\u0A24>\uE024;  # LETTER TA
\u0A25>\uE025;  # LETTER THA
\u0A26>\uE026;  # LETTER DA
\u0A27>\uE027;  # LETTER DHA
\u0A28>\uE028;  # LETTER NA
\u0A2A>\uE02A;  # LETTER PA
\u0A2B>\uE02B;  # LETTER PHA
\u0A2C>\uE02C;  # LETTER BA
\u0A2D>\uE02D;  # LETTER BHA
\u0A2E>\uE02E;  # LETTER MA
\u0A2F>\uE02F;  # LETTER YA
\u0A30>\uE030;  # LETTER RA
\u0A32>\uE032;  # LETTER LA

\u0A35>\uE035;  # LETTER VA

\u0A38>\uE038;  # LETTER SA
\u0A39>\uE039;  # LETTER HA
\u0A3C>\uE03C;  # SIGN NUKTA
\u0A3E>\uE03E;  # VOWEL SIGN AA
\u0A3F>\uE03F;  # VOWEL SIGN I
\u0A40>\uE040;  # VOWEL SIGN II
\u0A41>\uE041;  # VOWEL SIGN U
\u0A42>\uE042;  # VOWEL SIGN UU
\u0A47>\uE047;  # VOWEL SIGN EE
\u0A48>\uE048;  # VOWEL SIGN AI
\u0A4B>\uE04B;  # VOWEL SIGN OO
\u0A4C>\uE04C;  # VOWEL SIGN AU
\u0A4D>\uE04D;  # SIGN VIRAMA

\u0A5C>\uE05C;  # LETTER RRA

\u0A66>\uE066;  # DIGIT ZERO
\u0A67>\uE067;  # DIGIT ONE
\u0A68>\uE068;  # DIGIT TWO
\u0A69>\uE069;  # DIGIT THREE
\u0A6A>\uE06A;  # DIGIT FOUR
\u0A6B>\uE06B;  # DIGIT FIVE
\u0A6C>\uE06C;  # DIGIT SIX
\u0A6D>\uE06D;  # DIGIT SEVEN
\u0A6E>\uE06E;  # DIGIT EIGHT
\u0A6F>\uE06F;  # DIGIT NINE
\u0A70>\uE070;  # TIPPI
\u0A71>\uE071;  # ADDAK
\u0A72>\uE072;  # IRI
\u0A73>\uE073;  # URA
\u0A74>\uE074;  # EK ONKAR
\u0964>\ue064;        # DANDA
\u0965>\ue065;        # DOUBLE DANDA
#    :: NFC (NFD) ;
# eof

