﻿ // -*- 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_Devanagari.txt
// Date: Tue Nov 13 00:51:07 2001
//--------------------------------------------------------------------

// InterIndic_Devanagari

translit_InterIndic_Devanagari {
  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_Devanagari.utf8.txt
// Date: Thu Mar  1 20:03:55 2001
//--------------------------------------------------------------------
// InterIndic_Devanagari
//--------------------------------------------------------------------
// Copyright (c) 1999-2001, International Business Machines
// Corporation and others.  All Rights Reserved.
//--------------------------------------------------------------------
// Date: Tue Jan 23 12:41:59 2001
//--------------------------------------------------------------------
// InterIndic-Devanagari
//:: NFD (NFC) ; 
//Rules for Decomposed characters
 "\ue028\ue03c > \u0929;"  //\ue029
 "\ue030\ue03c > \u0931;"  //\ue031
 "\ue033\ue03c > \u0934;"  //\ue034
 "\ue015\ue03c > \u0958;"  //\ue058 LETTER QA   (For Urdu)
 "\ue016\ue03c > \u0959;"  //\ue059 LETTER KHHA (For Urdu)
 "\ue017\ue03c > \u095a;"  //\ue05a LETTER GHHA (For Urdu)
 "\ue01c\ue03c > \u095b;"  //\ue05b LETTER ZA   (For Urdu)
 "\ue021\ue03c > \u095c;"  //\ue05c LETTER DDDHA (pronounced RRA)
 "\ue022\ue03c > \u095d;"  //\ue05d LETTER RHA   (pronounced RRHA)
 "\ue02b\ue03c > \u095e;"  //\ue05e LETTER FA
 "\ue02f\ue03c > \u095f;"  //\ue05f LETTER YYA
 
 //Decomposed compatibility transliterations
 "\ue012\ue057>\u0914;"   // FALLBACK FOR TAMIL AU
 "0 > \u0966;"       // FALLBACK FOR TAMIL
 "1 > \u0967;"

 "\ue046\ue056 > \u0948;" // FALLBACK FOR TELUGU
 "\ue055>;" // FALLBACK BLOW AWAY KANNADA AND TELUGU LENGTH MARK
 "\ue056>;" // FALLBACK BLOW AWAY KANNADA AND TELUGU AI LENGTH MARK
 "\ue057>;" // FALLBACK BLOW AWAY TAMIL AU LENGTH MARK
 "\ue070>;" // FALLBACK BLOW AWAY GURMUKHI 
 "\ue071>;" // FALLBACK BLOW AWAY GURMUKHI
 "\ue072>;" // FALLBACK BLOW AWAY GURMUKHI
 "\ue073>;" // FALLBACK BLOW AWAY GURMUKHI
 "\ue074>;" // FALLBACK BLOW AWAY GURMUKHI
 
 //Decomposed compatibility transliterations
 "\ue032\ue03C > \u0933;" // FALLBACK FOR GURMUKHI
 "\ue038\ue03c > \u0936;" // FALLBACK FOR GURMUKHI

 "\ue001 >  \u0901;"  // SIGN CANDRABINDU
 "\ue002 >  \u0902;"  // SIGN ANUSVARA
 "\ue003 >  \u0903;"  // SIGN VISARGA
 "\ue005 >  \u0905;"  // LETTER A
 "\ue006 >  \u0906;"  // LETTER AA
 "\ue007 >  \u0907;"  // LETTER I
 "\ue008 >  \u0908;"  // LETTER II
 "\ue009 >  \u0909;"  // LETTER U
 "\ue00a >  \u090a;"  // LETTER UU
 "\ue00b >  \u090b;"  // LETTER VOCALIC R
 "\ue00c >  \u090c;"  // LETTER VOCALIC L
 "\ue00d >  \u090d;"  // LETTER CANDRA E (For representing English sounds)
 "\ue00e >  \u090e;" // UNMAPPED LETTER SHORT E(For Southern Scripts)
 //\ue00e >  \u090f;
 "\ue00f >  \u090f;"  // LETTER E
 "\ue010 >  \u0910;"  // LETTER AI
 "\ue011 >  \u0911;"  // LETTER CANDRA O (For representing English sounds)
 "\ue012 >  \u0912;" // UNMAPPED LETTER SHORT O (For Southern Scripts)
 //\ue012 >  \u0913; 
 "\ue013 >  \u0913;"  // LETTER O
 "\ue014 >  \u0914;"  // LETTER AU
 "\ue015 >  \u0915;"  // LETTER KA
 "\ue016 >  \u0916;"  // LETTER KHA
 "\ue017 >  \u0917;"  // LETTER GA
 "\ue018 >  \u0918;"  // LETTER GHA
 "\ue019 >  \u0919;"  // LETTER NGA
 "\ue01a >  \u091a;"  // LETTER CA
 "\ue01b >  \u091b;"  // LETTER CHA
 "\ue01c >  \u091c;"  // LETTER JA
 "\ue01d >  \u091d;"  // LETTER JHA
 "\ue01e >  \u091e;"  // LETTER NYA
 "\ue01f >  \u091f;"  // LETTER TTA
 "\ue020 >  \u0920;"  // LETTER TTHA
 "\ue021 >  \u0921;"  // LETTER DDA
 "\ue022 >  \u0922;"  // LETTER DDHA
 "\ue023 >  \u0923;"  // LETTER NNA
 "\ue024 >  \u0924;"  // LETTER TA
 "\ue025 >  \u0925;"  // LETTER THA
 "\ue026 >  \u0926;"  // LETTER DA
 "\ue027 >  \u0927;"  // LETTER DHA
 "\ue028 >  \u0928;"  // LETTER NA
 "\ue029 >  \u0929;"  // LETTER NNNA
 "\ue02a >  \u092a;"  // LETTER PA
 "\ue02b >  \u092b;"  // LETTER PHA
 "\ue02c >  \u092c;"  // LETTER BA
 "\ue02d >  \u092d;"  // LETTER BHA
 "\ue02e >  \u092e;"  // LETTER MA
 "\ue02f >  \u092f;"  // LETTER YA
 "\ue030 >  \u0930;"  // LETTER RA
 "\ue031 >  \u0931;"  // LETTER RRA (Eyelash RA for Southern scripts)
 //\ue031 >  \u0930;  
 "\ue032 >  \u0932;"  // LETTER LA
 "\ue033 >  \u0933;"  // LETTER LLA
 "\ue034 >  \u0934;"  // LETTER LLLA (LLLA for Southern scripts)
 //\ue034 >  \u0933;  
 "\ue035 >  \u0935;"  // LETTER VA
 "\ue036 >  \u0936;"  // LETTER SHA
 "\ue037 >  \u0937;"  // LETTER SSA
 "\ue038 >  \u0938;"  // LETTER SA
 "\ue039 >  \u0939;"  // LETTER HA
 "\ue03c >  \u093c;"  // SIGN NUKTA
 "\ue03d >  \u093d;"  // SIGN AVAGRAHA
 "\ue03e >  \u093e;"  // VOWEL SIGN AA
 "\ue03f >  \u093f;"  // VOWEL SIGN I
 "\ue040 >  \u0940;"  // VOWEL SIGN II
 "\ue041 >  \u0941;"  // VOWEL SIGN U
 "\ue042 >  \u0942;"  // VOWEL SIGN UU
 "\ue043 >  \u0943;"  // VOWEL SIGN VOCALIC R
 "\ue044 >  \u0944;"  // VOWEL SIGN VOCALIC RR
 "\ue045 >  \u0945;"  // VOWEL SIGN CANDRA E
 "\ue046 >  \u0946;" // UNMAPPED VOWEL SIGN SHORT E
 //\ue046 >  \u0947; 
 "\ue047 >  \u0947;"  // VOWEL SIGN E
 "\ue048 >  \u0948;"  // VOWEL SIGN AI
 "\ue049 >  \u0949;"  // VOWEL SIGN CANDRA O
 "\ue04a >  \u094a;" // UNMAPPED VOWEL SIGN SHORT O
 //\ue04a >  \u094b; 
 "\ue04b >  \u094b;"  // VOWEL SIGN O
 "\ue04c >  \u094c;"  // VOWEL SIGN AU
 "\ue04d >  \u094d;"  // SIGN VIRAMA
 "\ue050 >  \u0950;"  // OM
//         \u0951  # UNMAPPED STRESS SIGN UDATTA
//         \u0952  # UNMAPPED STRESS SIGN ANUDATTA
//         \u0953  # UNMAPPED GRAVE ACCENT
//         \u0954  # UNMAPPED ACUTE ACCENT
 "\ue058 >  \u0958;"  // LETTER QA   (For Urdu)
 "\ue059 >  \u0959;"  // LETTER KHHA (For Urdu)
 "\ue05a >  \u095a;"  // LETTER GHHA (For Urdu)
 "\ue05b >  \u095b;"  // LETTER ZA   (For Urdu)
 "\ue05c >  \u095c;"  // LETTER DDDHA (pronounced RRA)
 "\ue05d >  \u095d;"  // LETTER RHA   (pronounced RRHA)
 "\ue05e >  \u095e;"  // LETTER FA
 "\ue05f >  \u095f;"  // LETTER YYA
 "\ue060 >  \u0960;"  // LETTER VOCALIC RR
 "\ue061 >  \u0961;"  // LETTER VOCALIC LL
 "\ue062 >  \u0962;"  // VOWEL SIGN VOCALIC L
 "\ue063 >  \u0963;"  // VOWEL SIGN VOCALIC LL
 "\ue064 >  \u0964;"  // UNMAPPED Devanagari-InterIndic: DANDA
 "\ue065 >  \u0965;"  // UNMAPPED Devanagari-InterIndic: DOUBLE DANDA
 "\ue066 >  \u0966;"  // DIGIT ZERO
 "\ue067 >  \u0967;"  // DIGIT ONE
 "\ue068 >  \u0968;"  // DIGIT TWO
 "\ue069 >  \u0969;"  // DIGIT THREE
 "\ue06a >  \u096a;"  // DIGIT FOUR
 "\ue06b >  \u096b;"  // DIGIT FIVE
 "\ue06c >  \u096c;"  // DIGIT SIX
 "\ue06d >  \u096d;"  // DIGIT SEVEN
 "\ue06e >  \u096e;"  // DIGIT EIGHT
 "\ue06f >  \u096f;"  // DIGIT NINE
 "\ue0f0 >  \u0930;"  // FALLBACK RA 
 "\ue0f1 >  \u0930;"  // FALLBACK RA

 
//         \u0970  # UNMAPPED Devanagari-InterIndic: ABBREVIATION SIGN
//    :: NFC;
// eof
  }
}
