﻿# ***************************************************************************
# *
# *  Copyright (C) 2004-2009, International Business Machines
# *  Corporation; Unicode, Inc.; and others.  All Rights Reserved.
# *
# ***************************************************************************
# File: InterIndic_Telugu.txt
# Generated from CLDR 
#
\uE001→ఁ; # 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 MAPPING
\uE00E→ఎ; # LETTER E
\uE00F→ఏ; # LETTER EE
\uE010→ఐ; # LETTER AI
\uE011→ఒ; # FALBACK MAPPING
\uE012→ఒ; # LETTER O
\uE013→ఓ; # LETTER OO
\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→న; # REMAP (indicExceptions.txt): \u0C29→న = LETTER NNNA→LETTER NA
\uE02A→ప; # LETTER PA
\uE02B→ఫ; # LETTER PHA
\uE02C→బ; # LETTER BA
\uE02D→భ; # LETTER BHA
\uE02E→మ; # LETTER MA
\uE02F→య; # LETTER YA
\uE030\uE03C→ఱ;
\uE030→ర; # LETTER RA
\uE031→ఱ; # LETTER RRA
\uE032→ల; # LETTER LA
\uE033→ళ; # LETTER LLA
\uE034→ళ; # REMAP (indicExceptions.txt): \u0C34→ళ = LETTER LLLA→LETTER LLA
\uE035→వ; # LETTER VA
\uE036→శ; # LETTER SHA
\uE037→ష; # LETTER SSA
\uE038→స; # LETTER SA
\uE039→హ; # LETTER HA
\uE03C→; # FALLBACK BLOW AWAY NUKTA
\uE03D→; # FALLBACK BLOW AWAY AVAGRAHA
\uE03E→\u0C3E; # VOWEL SIGN AA
\uE03F→\u0C3F; # VOWEL SIGN I
\uE040→\u0C40; # VOWEL SIGN II
\uE041→ు; # VOWEL SIGN U
\uE042→ూ; # VOWEL SIGN UU
\uE043→ృ; # VOWEL SIGN VOCALIC R
\uE044→ౄ; # VOWEL SIGN VOCALIC RR
\uE045→\u0C46; # VOWEL SIGN CANDRA E→VOWEL SIGN E
\uE046→\u0C46; # VOWEL SIGN E
\uE047→\u0C47; # VOWEL SIGN EE
\uE048→\u0C48; # VOWEL SIGN AI
\uE049→\u0C4A; # REMAP (indicExceptions.txt): \u0C49→\u0C4A = VOWEL SIGN CANDRA O→VOWEL SIGN O
\uE04A→\u0C4A; # VOWEL SIGN O
\uE04B→\u0C4B; # VOWEL SIGN OO
\uE04C→\u0C4C; # VOWEL SIGN AU
\uE04D→\u0C4D; # SIGN VIRAMA
\uE050→ఓం; # REMAP (indicExceptions.txt): \u0C50→ఓం = OM→LETTER OO.SIGN ANUSVARA
\uE051→;
\uE052→;
\uE053→;
\uE054→;
\uE055→\u0C55; # LENGTH MARK
\uE056→\u0C56; # AI LENGTH MARK
\uE057→\u0C4C; # REMAP (indicExceptions.txt): \u0C57→\u0C4C = AU LENGTH MARK→VOWEL SIGN AU
\uE058→క; # REMAP
\uE059→ఖ; # REMAP (indicExceptions.txt): \u0C59→ఖ = LETTER KHHA→LETTER KHA
\uE05A→గ; # REMAP (indicExceptions.txt): \u0C5A→గ = LETTER GHHA→LETTER GA
\uE05B→జ; # REMAP (indicExceptions.txt): \u0C5B→జ = LETTER ZA→LETTER JA
\uE05C→ఢ; # REMAP
\uE05D→ఢ; # REMAP (indicExceptions.txt): \u0C5D→ఢ = LETTER RHA→LETTER DDHA
\uE05E→ఫ; # REMAP (indicExceptions.txt): \u0C5E→ఫ = LETTER FA→LETTER PHA
\uE05F→య; # REMAP (indicExceptions.txt): \u0C5F→య = LETTER YYA→LETTER YA
\uE060→ౠ; # LETTER VOCALIC RR
\uE061→ౡ; # LETTER VOCALIC LL
\uE062→\u0C3F; # REMAP (indicExceptions.txt): \u0C62→\u0C3F = VOWEL SIGN VOCALIC L→VOWEL SIGN I
\uE063→\u0C40; # REMAP (indicExceptions.txt): \u0C63→\u0C40 = VOWEL SIGN VOCALIC LL→VOWEL SIGN II
\uE064→'.'   ; # FALLBACK FOR DANDA
\uE065→'.'   ; # FALLBACK FOR 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→త\u0C4D;  # Bengali Khanda-ta
0 → ౦;    # FALLBACK FOR TAMIL
1 → ౧;
