﻿ // -*- Coding: utf-8; -*-
//--------------------------------------------------------------------
// Copyright (c) 1999-2002, International Business Machines
// Corporation and others.  All Rights Reserved.
//--------------------------------------------------------------------
// THIS IS A MACHINE-GENERATED FILE
// Tool: dumpicurules.bat
// Source: ../../../impl/data/Transliterator_InterIndic_Malayalam.txt
// Date: Sat Jul 27 10:31:07 2002
//--------------------------------------------------------------------

// InterIndic_Malayalam

t_InterIndic_Mlym {
  Rule {
//--------------------------------------------------------------------
//--------------------------------------------------------------------
//--------------------------------------------------------------------

// InterIndic-Malayalam
//:: NFD (NFC) ;
"\ue001>\u0d02;" // REMAP (indicExceptions.txt): \u0d01>\u0d02 = SIGN CANDRABINDU>SIGN ANUSVARA
"\ue002>\u0d02;" // SIGN ANUSVARA
"\ue003>\u0d03;" // SIGN VISARGA
"\ue005>\u0d05;" // LETTER A
"\ue006>\u0d06;" // LETTER AA
"\ue007>\u0d07;" // LETTER I
"\ue008>\u0d08;" // LETTER II
"\ue009>\u0d09;" // LETTER U
"\ue00a>\u0d0a;" // LETTER UU
"\ue00b>\u0d0b;" // LETTER VOCALIC R
"\ue00c>\u0d0c;" // LETTER VOCALIC L
"\ue00d>\u0d0e;" // FALLLBACK LETTER E
"\ue00e>\u0d0e;" // LETTER E
"\ue00f>\u0d0f;" // LETTER EE
"\ue010>\u0d10;" // LETTER AI
"\ue011>\u0d12;" // FALLBACK TO O
"\ue012>\u0d12;" // LETTER O
"\ue013>\u0d13;" // LETTER OO
"\ue014>\u0d14;" // LETTER AU
"\ue015>\u0d15;" // LETTER KA
"\ue016>\u0d16;" // LETTER KHA
"\ue017>\u0d17;" // LETTER GA
"\ue018>\u0d18;" // LETTER GHA
"\ue019>\u0d19;" // LETTER NGA
"\ue01a>\u0d1a;" // LETTER CA
"\ue01b>\u0d1b;" // LETTER CHA
"\ue01c>\u0d1c;" // LETTER JA
"\ue01d>\u0d1d;" // LETTER JHA
"\ue01e>\u0d1e;" // LETTER NYA
"\ue01f>\u0d1f;" // LETTER TTA
"\ue020>\u0d20;" // LETTER TTHA
"\ue021>\u0d21;" // LETTER DDA
"\ue022>\u0d22;" // LETTER DDHA
"\ue023>\u0d23;" // LETTER NNA
"\ue024>\u0d24;" // LETTER TA
"\ue025>\u0d25;" // LETTER THA
"\ue026>\u0d26;" // LETTER DA
"\ue027>\u0d27;" // LETTER DHA
"\ue028>\u0d28;" // LETTER NA
"\ue029>\u0d28;" // REMAP (indicExceptions.txt): \u0d29>\u0d28 = LETTER NNNA>LETTER NA
"\ue02a>\u0d2a;" // LETTER PA
"\ue02b>\u0d2b;" // LETTER PHA
"\ue02c>\u0d2c;" // LETTER BA
"\ue02d>\u0d2d;" // LETTER BHA
"\ue02e>\u0d2e;" // LETTER MA
"\ue02f>\u0d2f;" // LETTER YA
"\ue030\ue03c>\u0d31;"
"\ue030>\u0d30;" // LETTER RA
"\ue031>\u0d31;" // LETTER RRA
"\ue032>\u0d32;" // LETTER LA
"\ue033\ue03c>\u0d34;"
"\ue033>\u0d33;" // LETTER LLA
"\ue034>\u0d34;" // LETTER LLLA
"\ue035>\u0d35;" // LETTER VA
"\ue036>\u0d36;" // LETTER SHA
"\ue037>\u0d37;" // LETTER SSA
"\ue038>\u0d38;" // LETTER SA
"\ue039>\u0d39;" // LETTER HA

"\ue03c>;" // FALLBACK BLOW AWAY NUKTA
"\ue03d>;" // FALLBACK BLOW AWAY AVAGRAHA

"\ue03e>\u0d3e;" // VOWEL SIGN AA
"\ue03f>\u0d3f;" // VOWEL SIGN I
"\ue040>\u0d40;" // VOWEL SIGN II
"\ue041>\u0d41;" // VOWEL SIGN U
"\ue042>\u0d42;" // VOWEL SIGN UU
"\ue043>\u0d43;" // VOWEL SIGN VOCALIC R
"\ue044>;" // FALLBACK BLOW AWAY VOWEL SIGN VOCALIC RR
"\ue045>\u0d3e;" // REMAP (indicExceptions.txt): \u0d45>\u0d3e = VOWEL SIGN CANDRA E>VOWEL SIGN AA
"\ue046>\u0d46;" // VOWEL SIGN E
"\ue047>\u0d47;" // VOWEL SIGN EE
"\ue048>\u0d48;" // VOWEL SIGN AI
"\ue049>\u0d4b;" // REMAP (indicExceptions.txt): \u0d49>\u0d4b = VOWEL SIGN CANDRA O>VOWEL SIGN OO
"\ue04a>\u0d4a;" // VOWEL SIGN O
"\ue04b>\u0d4b;" // VOWEL SIGN OO
"\ue04c>\u0d4c;" // VOWEL SIGN AU
"\ue04d>\u0d4d;" // SIGN VIRAMA
"\ue050>\u0d13\u0d02;" // UNMAPPED InterIndic-Malayalam: OM
"\ue051>;"
"\ue052>;"
"\ue053>;"
"\ue054>;"
"\ue055>;" // FALLBACK BLOW AWAY LENGTH MARK
"\ue056>\u0d48;" // REMAP (indicExceptions.txt): \u0d56>\u0d48 = AI LENGTH MARK>VOWEL SIGN AI
"\ue057>\u0d57;" // AU LENGTH MARK
"\ue058>\u0d15;" // FALLBACK
"\ue059>\u0d16;" // REMAP (indicExceptions.txt): \u0d59>\u0d16 = LETTER KHHA>LETTER KHA
"\ue05a>\u0d17;" // REMAP (indicExceptions.txt): \u0d5a>\u0d17 = LETTER GHHA>LETTER GA
"\ue05b>\u0d1c;" // REMAP (indicExceptions.txt): \u0d5b>\u0d1c = LETTER ZA>LETTER JA
"\ue05d>\u0d22;" // REMAP (indicExceptions.txt): \u0d5d>\u0d22 = LETTER RHA>LETTER DDHA
"\ue05c>\u0d21;" // FALLBACK
"\ue05e>\u0d2b;" // REMAP (indicExceptions.txt): \u0d5e>\u0d2b = LETTER FA>LETTER PHA
"\ue05f>\u0d2f;" // REMAP (indicExceptions.txt): \u0d5f>\u0d2f = LETTER YYA>LETTER YA
"\ue060>\u0d60;" // LETTER VOCALIC RR
"\ue061>\u0d61;" // LETTER VOCALIC LL
"\ue062>;" // FALLBACK BLOW AWAY VOWEL SIGN VOCALIC L
"\ue063>;" // FALLBACK BLOW AWAY VOWEL SIGN VOCALIC LL
"\ue064>'.'   ;" // FALLBACK FOR DANDA
"\ue065>'.'   ;" // FALLBACK FOR DOUBLE DANDA	
"\ue066>\u0d66;" // DIGIT ZERO
"\ue067>\u0d67;" // DIGIT ONE
"\ue068>\u0d68;" // DIGIT TWO
"\ue069>\u0d69;" // DIGIT THREE
"\ue06a>\u0d6a;" // DIGIT FOUR
"\ue06b>\u0d6b;" // DIGIT FIVE
"\ue06c>\u0d6c;" // DIGIT SIX
"\ue06d>\u0d6d;" // DIGIT SEVEN
"\ue06e>\u0d6e;" // DIGIT EIGHT
"\ue06f>\u0d6f;" // DIGIT NINE
"\ue080>;" // UNMAPPED InterIndic-Malayalam: ISSHAR
"\ue070>;"
"\ue071>;"
"\ue072>;"
"\ue073>;"
"\ue074>;"
"\ue075>;"
"\ue076>;"
"\ue077>;"
"\ue078>;"
"\ue079>;"
"\ue07A>;"
"0 > \u0d66;"       // FALLBACK FOR TAMIL
"1 > \u0d67;"
"\ue0f0 >  \u0d30;"  // FALLBACK RA 
"\ue0f1 >  \u0d30;"  // FALLBACK RA


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