﻿# ***************************************************************************
# *
# *  Copyright (C) 2004-2009, International Business Machines
# *  Corporation; Unicode, Inc.; and others.  All Rights Reserved.
# *
# ***************************************************************************
# File: InterIndic_Bengali.txt
# Generated from CLDR 
#
\uE001>\u0981;          # SIGN CANDRABINDU
\uE002>ং;          # SIGN ANUSVARA
\uE003>ঃ;          # SIGN VISARGA
\uE004>অ;          # FALLBACK TO LETTER A
\uE005>অ;          # LETTER A
\uE006>আ;          # LETTER AA
\uE007>ই;          # LETTER I
\uE008>ঈ;          # LETTER II
\uE009>উ;          # LETTER U
\uE00A>ঊ;          # LETTER UU
\uE00B>ঋ;          # LETTER VOCALIC R
\uE00C>ঌ;          # LETTER VOCALIC L
\uE00D>এ;          # FALLBACK
\uE00E>এ;          # FALLBACK
\uE00F>এ;          # LETTER E
\uE010>ঐ;          # LETTER AI
\uE011>ও;          # FALLBACK
\uE012>ও;          # FALLBACK
\uE013>ও;          # LETTER O
\uE014>ঔ;          # LETTER AU
\uE015>ক;          # LETTER KA
\uE016>খ;          # LETTER KHA
\uE017>গ;          # LETTER GA
\uE018>ঘ;          # LETTER GHA
\uE019>ঙ;          # LETTER NGA
\uE01A>চ;          # LETTER CA
\uE01B>ছ;          # LETTER CHA
\uE01C>জ;          # LETTER JA
\uE01D>ঝ;          # LETTER JHA
\uE01E>ঞ;          # LETTER NYA
\uE01F>ট;          # LETTER TTA
\uE020>ঠ;          # LETTER TTHA
\uE021>ড;          # LETTER DDA
\uE022>ঢ;          # LETTER DDHA
\uE023>ণ;          # LETTER NNA
\uE024>ত;          # LETTER TA
\uE025>থ;          # LETTER THA
\uE026>দ;          # LETTER DA
\uE027>ধ;          # LETTER DHA
\uE028>ন;          # LETTER NA
\uE029>ন\u09BC;    # REMAP (indicExceptions.txt): \u09A9>ন = LETTER NNNA>LETTER NA
\uE02A>প;          # LETTER PA
\uE02B>ফ;          # LETTER PHA
\uE02C>ব;          # LETTER BA
\uE02D>ভ;          # LETTER BHA
\uE02E>ম;          # LETTER MA
\uE02F>য;          # LETTER YA
\uE030>র;          # LETTER RA
\uE031>র\u09BC;    # FALLBACK to RA
\uE032>ল;          # LETTER LA
\uE033>ল;          # REMAP (indicExceptions.txt): \u09B3>ল = LETTER LLA>LETTER LA
\uE034>ল;          # REMAP (indicExceptions.txt): \u09B4>ল = LETTER LLLA>LETTER LA
\uE035>ব;          # REMAP (indicExceptions.txt): \u09B5>ব = LETTER VA>LETTER BA
\uE036>শ;          # LETTER SHA
\uE037>ষ;          # LETTER SSA
\uE038>স;          # LETTER SA
\uE039>হ;          # LETTER HA
\uE03C>\u09BC;          # SIGN NUKTA
\uE03D>ঽ;          # SIGN AVAGRAHA
\uE03E>া;          # VOWEL SIGN AA
\uE03F>ি;          # VOWEL SIGN I
\uE040>ী;          # 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>ে;          # REMAP (indicExceptions.txt): \u09C5>ে = VOWEL SIGN CANDRA E>VOWEL SIGN E
\uE046>ে;          # FALLBACK
\uE047>ে;          # VOWEL SIGN E
\uE048>ৈ;          # VOWEL SIGN AI
\uE049>ো;    # REMAP (indicExceptions.txt): \u09C9>ো = VOWEL SIGN CANDRA O>VOWEL SIGN O
\uE04A>ো;    # FALLBACK
\uE04B>ো;    # VOWEL SIGN O
\uE04C>ৌ;    # VOWEL SIGN AU
\uE04D>\u09CD;          # SIGN VIRAMA
\uE050>ওং;    #  InterIndic-Bengali: OM
\uE051>;
\uE052>;
\uE053>;
\uE054>;
\uE055>;                # LENGTH MARK
\uE056>ৈ;          # REMAP (indicExceptions.txt): \u09D6>ৈ = AI LENGTH MARK>VOWEL SIGN AI
\uE057>ৗ;          # AU LENGTH MARK
\uE058>ক\u09BC;    # FALLBACK
\uE059>খ\u09BC;    # REMAP (indicExceptions.txt): \u09D9>খ = LETTER KHHA>LETTER KHA
\uE05A>গ\u09BC;    # REMAP (indicExceptions.txt): \u09DA>গ = LETTER GHHA>LETTER GA
\uE05B>জ\u09BC;    # REMAP (indicExceptions.txt): \u09DB>জ = LETTER ZA>LETTER JA
\uE05C>ড\u09BC;    # FALLBACK
\uE05D>ঢ\u09BC;    # LETTER RHA
\uE05E>ফ\u09BC;    # REMAP (indicExceptions.txt): \u09DE>ফ = LETTER FA>LETTER PHA
\uE05F>য\u09BC;    # LETTER YYA
\uE060>ৠ;          # LETTER VOCALIC RR
\uE061>ৡ;          # LETTER VOCALIC LL
\uE062>\u09E2;          # VOWEL SIGN VOCALIC L
\uE063>\u09E3;          # VOWEL SIGN VOCALIC LL
\uE064>।;          # DANDA
\uE065>॥;          # DOUBLE DANDA
\uE066>০;          # DIGIT ZERO
\uE067>১;          # DIGIT ONE
\uE068>২;          # DIGIT TWO
\uE069>৩;          # DIGIT THREE
\uE06A>৪;          # DIGIT FOUR
\uE06B>৫;          # DIGIT FIVE
\uE06C>৬;          # DIGIT SIX
\uE06D>৭;          # DIGIT SEVEN
\uE06E>৮;          # DIGIT EIGHT
\uE06F>৯;          # DIGIT NINE
\uE070>;                # ABBREVIATION SIGN
\uE071>ৰ;          # LETTER RA WITH MIDDLE DIAGONAL
\uE072>ৱ;          # 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
\uE081>ব;    # FALLBACK FOR ORIYA LETTER WA
\uE082>;                # Devanagari Glottal Stop
\uE083>ৎ;          # Khanda-ta
0 > ০;             # FALLBACK FOR TAMIL
1 > ১;
