﻿ // -*- Coding: utf-8; -*-
//--------------------------------------------------------------------
// Copyright (c) 1999-2001, International Business Machines
// Corporation and others.  All Rights Reserved.
//--------------------------------------------------------------------
// THIS IS A MACHINE-GENERATED FILE
// Tool: dumpICUrules.bat
// Source: ../../text/resources/Transliterator_InterIndic_Bengali.txt
// Date: Tue Nov 20 21:43:01 2001
//--------------------------------------------------------------------

// InterIndic_Bengali

translit_InterIndic_Bengali {
  Rule {
//--------------------------------------------------------------------
// 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_InterIndic_Bengali.utf8.txt
// Date: Thu Mar  1 20:03:55 2001
//--------------------------------------------------------------------
// InterIndic_Bengali
//--------------------------------------------------------------------
// Copyright (c) 1999-2001, International Business Machines
// Corporation and others.  All Rights Reserved.
//--------------------------------------------------------------------
// Date: Tue Jan 23 12:41:59 2001
//--------------------------------------------------------------------
// InterIndic-Bengali
//:: NFD (NFC) ;
"\uE001>\u0981;"          // SIGN CANDRABINDU
"\uE002>\u0982;"          // SIGN ANUSVARA
"\uE003>\u0983;"          // SIGN VISARGA
"\uE005>\u0985;"          // LETTER A
"\uE006>\u0986;"          // LETTER AA
"\uE007>\u0987;"          // LETTER I
"\uE008>\u0988;"          // LETTER II
"\uE009>\u0989;"          // LETTER U
"\uE00A>\u098A;"          // LETTER UU
"\uE00B>\u098B;"          // LETTER VOCALIC R
"\uE00C>\u098C;"          // LETTER VOCALIC L
"\uE00D>\u098F;"          // FALLBACK
"\uE00E>\u098F;"          // FALLBACK
"\uE00F>\u098F;"          // LETTER E
"\uE010>\u0990;"          // LETTER AI
"\uE011>\u0993;"          // FALLBACK
"\uE012>\u0993;"          // FALLBACK
"\uE013>\u0993;"          // LETTER O
"\uE014>\u0994;"          // LETTER AU
"\uE015>\u0995;"          // LETTER KA
"\uE016>\u0996;"          // LETTER KHA
"\uE017>\u0997;"          // LETTER GA
"\uE018>\u0998;"          // LETTER GHA
"\uE019>\u0999;"          // LETTER NGA
"\uE01A>\u099A;"          // LETTER CA
"\uE01B>\u099B;"          // LETTER CHA
"\uE01C>\u099C;"          // LETTER JA
"\uE01D>\u099D;"          // LETTER JHA
"\uE01E>\u099E;"          // LETTER NYA
"\uE01F>\u099F;"          // LETTER TTA
"\uE020>\u09A0;"          // LETTER TTHA
"\uE021>\u09A1;"          // LETTER DDA
"\uE022>\u09A2;"          // LETTER DDHA
"\uE023>\u09A3;"          // LETTER NNA
"\uE024>\u09A4;"          // LETTER TA
"\uE025>\u09A5;"          // LETTER THA
"\uE026>\u09A6;"          // LETTER DA
"\uE027>\u09A7;"          // LETTER DHA
"\uE028>\u09A8;"          // LETTER NA
"\uE029>\u09A8\u09BC;"    // REMAP (indicExceptions.txt): \u09a9>\u09a8 = LETTER NNNA>LETTER NA
"\uE02A>\u09AA;"          // LETTER PA
"\uE02B>\u09AB;"          // LETTER PHA
"\uE02C>\u09AC;"          // LETTER BA
"\uE02D>\u09AD;"          // LETTER BHA
"\uE02E>\u09AE;"          // LETTER MA
"\uE02F>\u09AF;"          // LETTER YA
"\uE030>\u09B0;"          // LETTER RA
"\uE031>\u09B0\u09BC;"    // FALLBACK to RA
"\uE032>\u09B2;"          // LETTER LA
"\uE033>\u09B2;"          // REMAP (indicExceptions.txt): \u09b3>\u09b2 = LETTER LLA>LETTER LA
"\uE034>\u09B2;"          // REMAP (indicExceptions.txt): \u09b4>\u09b2 = LETTER LLLA>LETTER LA
"\uE035>\u09AC;"          // REMAP (indicExceptions.txt): \u09b5>\u09ac = LETTER VA>LETTER BA
"\uE036>\u09B6;"          // LETTER SHA
"\uE037>\u09B7;"          // LETTER SSA
"\uE038>\u09B8;"          // LETTER SA
"\uE039>\u09B9;"          // LETTER HA
"\uE03C>\u09BC;"          // SIGN NUKTA
"\uE03D>;"                // FALLBACK BLOW AWAY AVAGRAHA
"\uE03E>\u09BE;"          // VOWEL SIGN AA
"\uE03F>\u09BF;"          // VOWEL SIGN I
"\uE040>\u09C0;"          // VOWEL SIGN II
"\uE041>\u09C1;"          // VOWEL SIGN U
"\uE042>\u09C2;"          // VOWEL SIGN UU
"\uE043>\u09C3;"          // VOWEL SIGN VOCALIC R
"\uE044>\u09C4;"          // VOWEL SIGN VOCALIC RR
"\uE045>\u09C7;"          // REMAP (indicExceptions.txt): \u09c5>\u09c7 = VOWEL SIGN CANDRA E>VOWEL SIGN E
"\uE046>\u09C7;"          // FALLBACK
"\uE047>\u09C7;"          // VOWEL SIGN E
"\uE048>\u09C8;"          // VOWEL SIGN AI
"\uE049>\u09C7\u09BE;"    // REMAP (indicExceptions.txt): \u09c9>\u09cb = VOWEL SIGN CANDRA O>VOWEL SIGN O
"\uE04A>\u09C7\u09BE;"    // FALLBACK
"\uE04B>\u09C7\u09BE;"    // VOWEL SIGN O
"\uE04C>\u09C7\u09D7;"    // VOWEL SIGN AU
"\uE04D>\u09CD;"          // SIGN VIRAMA
"\uE050>\u0993\u0982;"    //  InterIndic-Bengali: OM
"\ue051>;"
"\ue052>;"
"\ue053>;"
"\ue054>;"
"\uE055>;"               // UNMAPPED InterIndic-Bengali: LENGTH MARK
"\uE056>\u09C8;"          // REMAP (indicExceptions.txt): \u09d6>\u09c8 = AI LENGTH MARK>VOWEL SIGN AI
"\uE057>\u09D7;"          // AU LENGTH MARK
"\uE058>\u0995\u09BC;"    // FALLBACK
"\uE059>\u0996\u09BC;"    // REMAP (indicExceptions.txt): \u09d9>\u0996 = LETTER KHHA>LETTER KHA
"\uE05A>\u0997\u09BC;"    // REMAP (indicExceptions.txt): \u09da>\u0997 = LETTER GHHA>LETTER GA
"\uE05B>\u099C\u09BC;"    // REMAP (indicExceptions.txt): \u09db>\u099c = LETTER ZA>LETTER JA
"\uE05C>\u09A1\u09BC;"    // FALLBACK
"\uE05D>\u09A2\u09BC;"    // LETTER RHA
"\uE05E>\u09AB\u09BC;"    // REMAP (indicExceptions.txt): \u09de>\u09ab = LETTER FA>LETTER PHA
"\uE05F>\u09AF\u09BC;"    // LETTER YYA
"\uE060>\u09E0;"          // LETTER VOCALIC RR
"\uE061>\u09E1;"          // LETTER VOCALIC LL
"\uE062>\u09E2;"          // VOWEL SIGN VOCALIC L
"\uE063>\u09E3;"          // VOWEL SIGN VOCALIC LL
"\uE066>\u09E6;"          // DIGIT ZERO
"\uE067>\u09E7;"          // DIGIT ONE
"\uE068>\u09E8;"          // DIGIT TWO
"\uE069>\u09E9;"          // DIGIT THREE
"\uE06A>\u09EA;"          // DIGIT FOUR
"\uE06B>\u09EB;"          // DIGIT FIVE
"\uE06C>\u09EC;"          // DIGIT SIX
"\uE06D>\u09ED;"          // DIGIT SEVEN
"\uE06E>\u09EE;"          // DIGIT EIGHT
"\uE06F>\u09EF;"          // DIGIT NINE
"\uE070>;"
"\uE071>;"
"\uE0FA>\u09FA;"          // ISSHAR
"0 > \u09E6;"       // FALLBACK FOR TAMIL
"1 > \u09E7;"
"\ue072>;"
"\ue073>;"
"\ue074>;"

//    :: NFC (NFD) ;
// eof
  }
}
