
/*
Common Resource file for all the languages;

*/



function Resource()
{

 this.vowelLength;
 this.consonantLength;
 this.conjunctLength;
 this.nuktaLength;
 this.ZWJ = '\u200D';	 // Zero width joiner
 this.ZWNJ = '\u200C'; // Zero width non Joiner


 this.vowelStart = 5; // Start of the vowel range
 this.vowelEnd = 20; // End of the vowel range


// English
// Array to use for English to Unicode conversion of vowels/matra

 this.engToUniVowel = new Array();
 this.uniToEngVowel = new Array();
 this.engConsonant = new Array();
 this.charOnlyUppercase = new Array();
 this.engReplace = new Array();
 this.engReplaceBy = new Array();
 this.VowelModifiers;

 this.uniKeyboardchars;
 this.uniKeywordHelpChar;
 this.charOnlyUppercase;

//Language Conjumcts
 this.langConjuncts = {};
 this.InArray = {};//03/04/07  Inscript Array

//Correct User Spell array for specific words
 this.userSpell = {};

 this.stringInvite="";
 this.stringWebSeacrh="";
 this.Initialize_HI=Initialize_HI;
 this.Initialize_MA=Initialize_MA;
 this.Initialize_TM=Initialize_TM;
 this.Initialize_GU=Initialize_GU;
 this.Initialize_PN=Initialize_PN;
 this.Initialize_BN=Initialize_BN;
 this.Initialize_TG=Initialize_TG;
 this.Initialize_KN=Initialize_KN;
 this.Initialize_ML=Initialize_ML;
 
}

function Initialize_HI(kbdid)
{     
    if(kbdid == 0)//03/04/07
	{
		this.vowelLength = 16;
		this.consonantLength =	37;
		this.conjunctLength = 10;
		this.nuktaLength =		8;

		this.stringInvite="\u0928\u093f\u092e\u0902\u0924\u094d\u0930\u0923";
		this.stringWebSeacrh="\u0916\u094b\u091c";


		this.langConjuncts = {};

		//Hindi- Unicode Keyboard array
		this.uniKeyboardchars = [ ["a", "ai", "ka", "cha", "Ta", "ta", "pa", "ya", "sha"],
							 ["aa", "o", "kha", "chha", "Tha", "tha", "pha", "ra", "Sha"],
							 ["i", "O", "ga", "ja", "Da", "da", "ba", "la", "sa"],
							 ["ee", "au", "gha", "jha", "Dha", "dha", "bha", "La", "ha"],
							 ["u", "Ra", "Nga", "Nja", "Na", "na", "ma", "va", "kSha"],
							 ["oo", "a^", "qa", "za", "D_a", "&nbsp;", "fa", "&nbsp;", "tra"],
							 ["e", "aH", "Kha", "&nbsp;", "Dh_a", "&nbsp;", "&nbsp;", "&nbsp;", "Gya"],
							 ["A","aM", "Ga", "&nbsp;", "&nbsp;" , "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;"]
							];



		//Hindi- Unicode Keyboard array dislpay in dynamic help

		this.uniKeywordHelpChar = [ ["a", "ai", "k", "ch", "T", "t", "p", "y", "sh"],
							 ["aa", "o", "kh", "chh", "Th", "th", "ph", "r", "Sh"],
							 ["i", "O", "g", "j", "D", "d", "b", "l", "s"],
							 ["ee", "au", "gh", "jh", "Dh", "dh", "bh", "L", "h"],
							 ["u", "R", "Ng", "Nj", "N", "n", "m", "v", "kSh"],
							 ["oo", "a^", "q", "z", "D_", "&nbsp;", "f", "&nbsp;", "tr"],
							 ["e", "aH", "Kh", "&nbsp;", "Dh_", "&nbsp;", "&nbsp;", "&nbsp;", "Gy"],
							 ["A","aM", "G", "&nbsp;", "&nbsp;" , "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;"]
							];



		//Hindi- Characters which can not be converted to LowerCase.
		this.charOnlyUppercase = ["A","D","F","G","H","K","L","M","N","O","R","S","T","X"];

	     //Hindi- Vowel Modifiers.
		this.VowelModifiers = ["^","H","M"];

		//Hindi- English Vowels and Matra to be used for English to Unicode conversion
		this.engToUniVowel[0] = "a";
		this.engToUniVowel[1] = "aa";
		this.engToUniVowel[2] = "i";
		this.engToUniVowel[3] = "ee";
		this.engToUniVowel[4] = "u";
		this.engToUniVowel[5] = "oo";
		this.engToUniVowel[6] = "R";
		this.engToUniVowel[7] = "";
		this.engToUniVowel[8] = "A";
		this.engToUniVowel[9] = "";
		this.engToUniVowel[10] = "e";
		this.engToUniVowel[11] = "ai";
		this.engToUniVowel[12] = "O";
		this.engToUniVowel[13] = "";
		this.engToUniVowel[14] = "o";
		this.engToUniVowel[15] = "au";



		//Hindi- English Consonant
		this.engConsonant[0] = "k";
		this.engConsonant[1] = "kh";
		this.engConsonant[2] = "g";
		this.engConsonant[3] = "gh";
		this.engConsonant[4] = "Ng";
		this.engConsonant[5] = "ch";
		this.engConsonant[6] = "chh";
		this.engConsonant[7] = "j";
		this.engConsonant[8] = "jh";
		this.engConsonant[9] = "Nj";
		this.engConsonant[10] = "T";
		this.engConsonant[11] = "Th";
		this.engConsonant[12] = "D";
		this.engConsonant[13] = "Dh";
		this.engConsonant[14] = "N";
		this.engConsonant[15] = "t";
		this.engConsonant[16] = "th";
		this.engConsonant[17] = "d";
		this.engConsonant[18] = "dh";
		this.engConsonant[19] = "n";
		this.engConsonant[20] = "";
		this.engConsonant[21] = "p";
		this.engConsonant[22] = "ph";
		this.engConsonant[23] = "b";
		this.engConsonant[24] = "bh";
		this.engConsonant[25] = "m";
		this.engConsonant[26] = "y";
		this.engConsonant[27] = "r";
		this.engConsonant[28] = "";
		this.engConsonant[29] = "l";
		this.engConsonant[30] = "L";
		this.engConsonant[31] = "";
		this.engConsonant[32] = "v";
		this.engConsonant[33] = "sh";
		this.engConsonant[34] = "Sh";
		this.engConsonant[35] = "s";
		this.engConsonant[36] = "h";




		//Hindi-Language Conjumcts
		this.langConjuncts["q"] = '\u0958';
		this.langConjuncts["Kh"] = '\u0959';
		this.langConjuncts["G"] = '\u095A';
		this.langConjuncts["z"] = '\u095B';
		this.langConjuncts["D_"] = '\u095C';
		this.langConjuncts["Dh_"] = '\u095D';
		this.langConjuncts["F"] = '\u095E';
		this.langConjuncts["kSh"] = '\u0915\u094D\u0937';
		this.langConjuncts["tr"] = '\u0924\u094D\u0930';
		this.langConjuncts["nn"] = '\u0928\u094D\u0928';
		this.langConjuncts["nm"] = '\u0928\u094D\u092e';
		this.langConjuncts["ny"] = '\u0928\u094D\u092f';
		this.langConjuncts["c"] = '\u0915';
		this.langConjuncts["f"] = '\u092B';
		this.langConjuncts["w"] = '\u0935';
		this.langConjuncts["X"] = '\u0915\u094d\u0937';
		this.langConjuncts["x"] = '\u0915\u094d\u0938';
		this.langConjuncts["Gy"] = '\u091c\u094d\u091e';
		this.langConjuncts["dny"] = '\u091c\u094d\u091e';
		this.langConjuncts["Jn"] = '\u091c\u094d\u091e';


		//Hindi-Correct User Spell array for specific words

		this.userSpell["hamen"]="hame^";
		this.userSpell["hain"]="hai^";
		this.userSpell["hoon"]="hooM";
		this.userSpell["yahaan"]="yahaaM";
		this.userSpell["hum"]="ham";
		this.userSpell["main"]="mai^";
		this.userSpell["kahaan"]="kahaaM";
		this.userSpell["men"]="me^";
		this.userSpell["naheen"]="nahee^";
		this.userSpell["nahin"]="nahee^";
		this.userSpell["haan"]="haaM";
		this.userSpell["vahaan"]="vahaaM";
		this.userSpell["jahaan"]="jahaaM";
		this.userSpell["news"]="nyooz";
		this.userSpell["apna"]="apanaa";
		this.userSpell["apke"]="aapake";
		this.userSpell["apka"]="aapakaa";
		this.userSpell["apki"]="aapakee";
		this.userSpell["thik"]="Theek";
		this.userSpell["beeemaan"]="be?eemaan";


		//Hindi-Special word replaces.
		this.engReplace[0] = "ii";
		this.engReplace[1] = "I";
		this.engReplace[2] = "uu";
		this.engReplace[3] = "U";
		this.engReplace[4] = "ei";
		this.engReplace[5] = "ou";

		this.engReplaceBy[0] = "ee";
		this.engReplaceBy[1] = "ee";
		this.engReplaceBy[2] = "oo";
		this.engReplaceBy[3] = "oo";
		this.engReplaceBy[4] = "ai";
		this.engReplaceBy[5] = "au";
	}
	else if(kbdid == 1)
	{	   
		//03/04/07
		this.InArray["`"] =	'\'';
		this.InArray["1"] =	 '\u0967';
		this.InArray["2"] =	 '\u0968';
		this.InArray["3"] =	 '\u0969';
		this.InArray["4"] =	 '\u096A';
		this.InArray["5"] =	 '\u096B';
		this.InArray["6"] =	 '\u096C';
		this.InArray["7"] =	 '\u096D';
		this.InArray["8"] =	 '\u096E';
		this.InArray["9"] =	 '\u096F';
		this.InArray["0"] =	 '\u0966';
		this.InArray["-"] =	 '-';
		this.InArray["="] =	 '\u0943';
		this.InArray["\\"] =	 '\u0949';
		this.InArray["q"] =	 '\u094C';
		this.InArray["w"] =	 '\u0948';
		this.InArray["e"] =	 '\u093E';
		this.InArray["r"] =	 '\u0940';
		this.InArray["t"] =	 '\u0942';
		this.InArray["y"] =	 '\u092C';
		this.InArray["u"] =	 '\u0939';
		this.InArray["i"] =	 '\u0917';
		this.InArray["o"] =	 '\u0926';
		this.InArray["p"] =	 '\u091C';
		this.InArray["["] =	 '\u0921';
		this.InArray["]"] =	 '\u093C';
		this.InArray["a"] =	 '\u094B';
		this.InArray["s"] =	 '\u0947';
		this.InArray["d"] =	 '\u094D';
		this.InArray["f"] =	 '\u093F';
		this.InArray["g"] =	 '\u0941';
		this.InArray["h"] =	 '\u092A';
		this.InArray["j"] =	 '\u0930';
		this.InArray["k"] =	 '\u0915';
		this.InArray["l"] =	 '\u0924';
		this.InArray[";"] =	 '\u091A';
		this.InArray["\'"] =	 '\u091F';
		this.InArray["z"] =	 '';
		this.InArray["x"] =	 '\u0902';
		this.InArray["c"] =	 '\u092E';
		this.InArray["v"] =	 '\u0928';
		this.InArray["b"] =   '\u0935';
		this.InArray["n"] =	 '\u0932';
		this.InArray["m"] =	 '\u0938';
		this.InArray[","] =	 ',';
		this.InArray["."] =	 '.';
		this.InArray["/"] =	 '\u092F';
		
		//this.InArray with shift
		this.InArray["~"] =	 '~' ; 
		this.InArray["!"] =	 '\u090D';
		this.InArray["@"] =	 '\u0945';
		this.InArray["#"] =	 '\u094D\u0930';
		this.InArray["$"] =	 '\u0930\u094D';
		this.InArray["%"] =	 '\u091C\u094D\u091E';
		this.InArray["^"] =	 '\u0924\u094D\u0930';
		this.InArray["&"] =	 '\u0915\u094D\u0937';
		this.InArray["*"] =	 '\u0936\u094D\u0930';
		this.InArray["("] =	 '(';
		this.InArray[")"] =	 ')';
		this.InArray["_"] =	 '\u0903';
		this.InArray["+"] =	 '\u090B';
		this.InArray["|"] =	 '\u0911';
		this.InArray["Q"] =	 '\u0914';
		this.InArray["W"] =	 '\u0910';
		this.InArray["E"] =	 '\u0906';
		this.InArray["R"] =	 '\u0908';
		this.InArray["T"] =	 '\u090A';
		this.InArray["Y"] =	 '\u092D';
		this.InArray["U"] =	 '\u0919';
		this.InArray["I"] =	 '\u0918';
		this.InArray["O"] =	 '\u0927';
		this.InArray["P"] =	 '\u091D';
		this.InArray["{"] =	 '\u0922';
		this.InArray["}"] =	 '\u091E';
		this.InArray["A"] =	 '\u0913';
		this.InArray["S"] =	 '\u090F';
		this.InArray["D"] =	 '\u0905';
		this.InArray["F"] =	 '\u0907';
		this.InArray["G"] =	 '\u0909';
		this.InArray["H"] =	 '\u092B';
		this.InArray["J"] =	 '\u0931';
		this.InArray["K"] =	 '\u0916';
		this.InArray["L"] =	 '\u0925';
		this.InArray[":"] =	 '\u091B';
		this.InArray["\""] =	 '\u0920';
		this.InArray["Z"] =	 '';
		this.InArray["X"] =	 '\u0901';
		this.InArray["C"] =	 '\u0923';
		this.InArray["V"] =	 '';
		this.InArray["B"] =	 '' ;
		this.InArray["N"] =	 '\u0933';
		this.InArray["M"] =	 '\u0936';
		this.InArray["<"] =	 '\u0937';
		this.InArray[">"] =	 '\u0964';
		this.InArray["?"] =	 '?';
		this.InArray[" "] =	 ' ';
	}	
}



function Initialize_MA(kbdid)
{
	if(kbdid == PHONETIC)//03/04/07
	{
		this.vowelLength = 16;
		this.consonantLength =	37;
		this.conjunctLength = 10;
		this.nuktaLength =		8;

		this.langConjuncts = {};

		this.stringInvite="\u0906\u092e\u0902\u0924\u094d\u0930\u0923";
		this.stringWebSeacrh="\u0936\u094b\u0927";

		//Marathi-  Unicode Keyboard array
		this.uniKeyboardchars = [ ["a", "ai", "ka", "cha", "Ta", "ta", "pa", "ya", "sha"],
								["aa", "o", "kha", "chha", "Tha", "tha", "pha", "ra", "Sha"],
								["i", "O", "ga", "ja", "Da", "da", "ba", "la", "sa"],
								["ee", "au", "gha", "jha", "Dha", "dha", "bha", "La", "ha"],
								["u", "Ra", "Nga", "Nja", "Na", "na", "ma", "va", "kSha"],
								["oo", "a^", "qa", "za", "D_a", "&nbsp;", "fa", "&nbsp;", "tra"],
								["e", "aH", "Kha", "&nbsp;", "Dh_a", "&nbsp;", "&nbsp;", "&nbsp;", "dnya"],
								["A","aM", "Ga", "&nbsp;", "&nbsp;" , "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;"]
								];



		//Marathi- Unicode Keyboard array dislpay in dynamic help
		this.uniKeywordHelpChar = [ ["a", "ai", "k", "ch", "T", "t", "p", "y", "sh"],
							 ["aa", "o", "kh", "chh", "Th", "th", "ph", "r", "Sh"],
							 ["i", "O", "g", "j", "D", "d", "b", "l", "s"],
							 ["ee", "au", "gh", "jh", "Dh", "dh", "bh", "L", "h"],
							 ["u", "R", "Ng", "Nj", "N", "n", "m", "v", "kSh"],
							 ["oo", "a^", "q", "z", "D_", "&nbsp;", "f", "&nbsp;", "tr"],
							 ["e", "aH", "Kh", "&nbsp;", "Dh_", "&nbsp;", "&nbsp;", "&nbsp;", "dny"],
							 ["A","aM", "G", "&nbsp;", "&nbsp;" , "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;"]
							];




		//Marathi- Characters which can not be converted to LowerCase.
		this.charOnlyUppercase = ["A","D","F","G","H","K","L","M","N","O","R","S","T","X","I","U"];

	     //Marathi- Vowel Modifiers.
		this.VowelModifiers = ["^","H","M"];


		//Marathi- English Vowels and Matra to be used for English to Unicode conversion
		this.engToUniVowel[0] = "a";
		this.engToUniVowel[1] = "aa";
		this.engToUniVowel[2] = "i";
		this.engToUniVowel[3] = "ee";
		this.engToUniVowel[4] = "u";
		this.engToUniVowel[5] = "oo";
		this.engToUniVowel[6] = "R";
		this.engToUniVowel[7] = "";
		this.engToUniVowel[8] = "A";
		this.engToUniVowel[9] = "";
		this.engToUniVowel[10] = "e";
		this.engToUniVowel[11] = "ai";
		this.engToUniVowel[12] = "O";
		this.engToUniVowel[13] = "";
		this.engToUniVowel[14] = "o";
		this.engToUniVowel[15] = "au";



		//Marathi- English Consonant
		this.engConsonant[0] = "k";
		this.engConsonant[1] = "kh";
		this.engConsonant[2] = "g";
		this.engConsonant[3] = "gh";
		this.engConsonant[4] = "Ng";
		this.engConsonant[5] = "ch";
		this.engConsonant[6] = "chh";
		this.engConsonant[7] = "j";
		this.engConsonant[8] = "jh";
		this.engConsonant[9] = "Nj";
		this.engConsonant[10] = "T";
		this.engConsonant[11] = "Th";
		this.engConsonant[12] = "D";
		this.engConsonant[13] = "Dh";
		this.engConsonant[14] = "N";
		this.engConsonant[15] = "t";
		this.engConsonant[16] = "th";
		this.engConsonant[17] = "d";
		this.engConsonant[18] = "dh";
		this.engConsonant[19] = "n";
		this.engConsonant[20] = "";
		this.engConsonant[21] = "p";
		this.engConsonant[22] = "ph";
		this.engConsonant[23] = "b";
		this.engConsonant[24] = "bh";
		this.engConsonant[25] = "m";
		this.engConsonant[26] = "y";
		this.engConsonant[27] = "r";
		this.engConsonant[28] = "";
		this.engConsonant[29] = "l";
		this.engConsonant[30] = "L";
		this.engConsonant[31] = "";
		this.engConsonant[32] = "v";
		this.engConsonant[33] = "sh";
		this.engConsonant[34] = "Sh";
		this.engConsonant[35] = "s";
		this.engConsonant[36] = "h";




		//Marathi-Language Conjumcts

		this.langConjuncts["q"] = '\u0958';
		this.langConjuncts["Kh"] = '\u0959';
		this.langConjuncts["G"] = '\u095A';
		this.langConjuncts["z"] = '\u095B';
		this.langConjuncts["D_"] = '\u095C';
		this.langConjuncts["Dh_"] = '\u095D';
		this.langConjuncts["F"] = '\u095E';
		this.langConjuncts["kSh"] = '\u0915\u094D\u0937';
		this.langConjuncts["tr"] = '\u0924\u094D\u0930';
		this.langConjuncts["nn"] = '\u0928\u094D\u0928';
		this.langConjuncts["nm"] = '\u0928\u094D\u092e';
		this.langConjuncts["ny"] = '\u0928\u094D\u092f';
		this.langConjuncts["c"] = '\u0915';
		this.langConjuncts["f"] = '\u092B';
		this.langConjuncts["w"] = '\u0935';
		this.langConjuncts["X"] = '\u0915\u094d\u0937';
		this.langConjuncts["x"] = '\u0915\u094d\u0938';
		this.langConjuncts["Gy"] = '\u091c\u094d\u091e';
		this.langConjuncts["dny"] = '\u091c\u094d\u091e';
		this.langConjuncts["Jn"] = '\u091c\u094d\u091e';


		//Marathi- Correct User Spell array for specific words
		this.userSpell["aapan"]="aapaN";
		this.userSpell["athavan"]="aaThavaN";
		this.userSpell["aankhi"]="aaNakhee";
		this.userSpell["kahi"]="kaahee";
		this.userSpell["nahi"]="naahee";
		//this.userSpell["mi"]="mee";
		this.userSpell["tumhi"]="tumhee";
		this.userSpell["kuthe"]="kuThe";
		this.userSpell["yeee"]="ye?ee";
		this.userSpell["yeeel"]="ye?eel";
		this.userSpell["deee"]="de?ee";
		this.userSpell["deeel"]="de?eel";
		this.userSpell["hooon"]="ho?oon";



		//Marathi- Special word replaces.
		this.engReplace[0] = "ii";
		this.engReplace[1] = "I";
		this.engReplace[2] = "uu";
		this.engReplace[3] = "U";
		this.engReplace[4] = "ei";
		this.engReplace[5] = "ou";

		this.engReplaceBy[0] = "ee";
		this.engReplaceBy[1] = "ee";
		this.engReplaceBy[2] = "oo";
		this.engReplaceBy[3] = "oo";
		this.engReplaceBy[4] = "ai";
		this.engReplaceBy[5] = "au";
	}
	else if(kbdid == INSCRIPT)
	{
	//03/04/07
	
		this.InArray["`"] =	'\'';
		this.InArray["1"] =	 '\u0967';
		this.InArray["2"] =	 '\u0968';
		this.InArray["3"] =	 '\u0969';
		this.InArray["4"] =	 '\u096A';
		this.InArray["5"] =	 '\u096B';
		this.InArray["6"] =	 '\u096C';
		this.InArray["7"] =	 '\u096D';
		this.InArray["8"] =	 '\u096E';
		this.InArray["9"] =	 '\u096F';
		this.InArray["0"] =	 '\u0966';
		this.InArray["-"] =	 '-';
		this.InArray["="] =	 '\u0943';
		this.InArray["\\"] =	 '\u0949';
		this.InArray["q"] =	 '\u094C';
		this.InArray["w"] =	 '\u0948';
		this.InArray["e"] =	 '\u093E';
		this.InArray["r"] =	 '\u0940';
		this.InArray["t"] =	 '\u0942';
		this.InArray["y"] =	 '\u092C';
		this.InArray["u"] =	 '\u0939';
		this.InArray["i"] =	 '\u0917';
		this.InArray["o"] =	 '\u0926';
		this.InArray["p"] =	 '\u091C';
		this.InArray["["] =	 '\u0921';
		this.InArray["]"] =	 '\u093C';
		this.InArray["a"] =	 '\u094B';
		this.InArray["s"] =	 '\u0947';
		this.InArray["d"] =	 '\u094D';
		this.InArray["f"] =	 '\u093F';
		this.InArray["g"] =	 '\u0941';
		this.InArray["h"] =	 '\u092A';
		this.InArray["j"] =	 '\u0930';
		this.InArray["k"] =	 '\u0915';
		this.InArray["l"] =	 '\u0924';
		this.InArray[";"] =	 '\u091A';
		this.InArray["\'"] =	 '\u091F';
		this.InArray["z"] =	 '';
		this.InArray["x"] =	 '\u0902';
		this.InArray["c"] =	 '\u092E';
		this.InArray["v"] =	 '\u0928';
		this.InArray["b"] =   '\u0935';
		this.InArray["n"] =	 '\u0932';
		this.InArray["m"] =	 '\u0938';
		this.InArray[","] =	 ',';
		this.InArray["."] =	 '.';
		this.InArray["/"] =	 '\u092F';
		
		//this.InArray with shift
		this.InArray["~"] =	 '~' ; 
		this.InArray["!"] =	 '\u090D';
		this.InArray["@"] =	 '\u0945';
		this.InArray["#"] =	 '\u094D\u0930';
		this.InArray["$"] =	 '\u0930\u094D';
		this.InArray["%"] =	 '\u091C\u094D\u091E';
		this.InArray["^"] =	 '\u0924\u094D\u0930';
		this.InArray["&"] =	 '\u0915\u094D\u0937';
		this.InArray["*"] =	 '\u0936\u094D\u0930';
		this.InArray["("] =	 '(';
		this.InArray[")"] =	 ')';
		this.InArray["_"] =	 '\u0903';
		this.InArray["+"] =	 '\u090B';
		this.InArray["|"] =	 '\u0911';
		this.InArray["Q"] =	 '\u0914';
		this.InArray["W"] =	 '\u0910';
		this.InArray["E"] =	 '\u0906';
		this.InArray["R"] =	 '\u0908';
		this.InArray["T"] =	 '\u090A';
		this.InArray["Y"] =	 '\u092D';
		this.InArray["U"] =	 '\u0919';
		this.InArray["I"] =	 '\u0918';
		this.InArray["O"] =	 '\u0927';
		this.InArray["P"] =	 '\u091D';
		this.InArray["{"] =	 '\u0922';
		this.InArray["}"] =	 '\u091E';
		this.InArray["A"] =	 '\u0913';
		this.InArray["S"] =	 '\u090F';
		this.InArray["D"] =	 '\u0905';
		this.InArray["F"] =	 '\u0907';
		this.InArray["G"] =	 '\u0909';
		this.InArray["H"] =	 '\u092B';
		this.InArray["J"] =	 '\u0931';
		this.InArray["K"] =	 '\u0916';
		this.InArray["L"] =	 '\u0925';
		this.InArray[":"] =	 '\u091B';
		this.InArray["\""] =	 '\u0920';
		this.InArray["Z"] =	 '';
		this.InArray["X"] =	 '\u0901';
		this.InArray["C"] =	 '\u0923';
		this.InArray["V"] =	 '';
		this.InArray["B"] =	 '' ;
		this.InArray["N"] =	 '\u0933';
		this.InArray["M"] =	 '\u0936';
		this.InArray["<"] =	 '\u0937';
		this.InArray[">"] =	 '\u0964';
		this.InArray["?"] =	 '?';
		this.InArray[" "] =	 ' ';		
	}
}
 

function Initialize_TM(kbdid)
{
	if(kbdid == PHONETIC)//03/04/07
	{
		this.vowelLength = 16;
		this.consonantLength =	37;
		this.conjunctLength = 10;
		this.nuktaLength = 8;

		this.langConjuncts = {};

		this.stringInvite="\u0b85\u0bb4\u0bc8\u0baa\u0bcd\u0baa\u0bc1 \u0bb5\u0bbf\u0b9f\u0bc1\u0b95";
		this.stringWebSeacrh="\u0b87\u0ba3\u0bc8\u0baf \u0ba4\u0bc7\u0b9f\u0bb2\u0bcd";

		// Tamil- Unicode Keyboard array
		this.uniKeyboardchars = [ ["a", "E", "ka", "Ta", "pa", "ya", "Sha"],
							 ["aa", "ai", "ga", "Da", "ba", "ra", "sa"],
							 ["i", "o", "Nga", "Na", "ma", "Ra", "ha"],
							 ["ee", "O", "cha", "ta", "&nbsp;", "la", "kSha"],
							 ["u", "au", "ja", "da", "&nbsp;", "La", "sree"],
							 ["oo", "aH", "Nja", "na", "&nbsp;", "zha","&nbsp;"],
							 ["e", "&nbsp;", "&nbsp;", "n_a", "&nbsp;", "va", "&nbsp;"]
							];



		//Tamil- Unicode Keyboard array dislpay in dynamic help
		this.uniKeywordHelpChar = [ ["a", "E", "k", "T", "p", "y", "Sh"],
							 ["aa", "ai", "g", "D", "b", "r", "s"],
							 ["i", "o", "Ng", "N", "m", "R", "h"],
							 ["ee", "O", "ch", "t", "&nbsp;", "l", "kSh"],
							 ["u", "au", "j", "d", "&nbsp;", "L", "sree"],
							 ["oo", "aH", "Nj", "n", "&nbsp;", "zh","&nbsp;"],
							 ["e", "&nbsp;", "&nbsp;", "n_", "&nbsp;", "v", "&nbsp;"]
							];



		//Tamil- Characters which can not be converted to LowerCase.
		this.charOnlyUppercase = ["D","E","H","N","O","S","T","X","R","L","I","U"]; 

	     //Tamil- Vowel Modifiers.
		this.VowelModifiers = ["H"];


		//Tamil- English Vowels and Matra to be used for English to Unicode conversion
		this.engToUniVowel[0] = "a";	// a vowel
		this.engToUniVowel[1] = "aa";	// aa
		this.engToUniVowel[2] = "i";	// i
		this.engToUniVowel[3] = "ee";	// ee
		this.engToUniVowel[4] = "u";	// u
		this.engToUniVowel[5] = "oo";	// oo
		this.engToUniVowel[6] = "";	// Ra
		this.engToUniVowel[7] = "";	// RRa [[Ra]]
		this.engToUniVowel[8] = "";	// A
		this.engToUniVowel[9] = "E";	// E [[e]]
		this.engToUniVowel[10] = "e";	// e
		this.engToUniVowel[11] = "ai";	// ei/ai
		this.engToUniVowel[12] = "";	// O chandra
		this.engToUniVowel[13] = "O";	// O in south indian languages [[o]]
		this.engToUniVowel[14] = "o";	// o
		this.engToUniVowel[15] = "au"; 




		//Tamil- English Consonant
		this.engConsonant[0] = "k";	// ka
		this.engConsonant[1] = "";	// kha
		this.engConsonant[2] = "";	// ga
		this.engConsonant[3] = "";	// gha
		this.engConsonant[4] = "Ng";	// Nga
		this.engConsonant[5] = "ch";	// cha
		this.engConsonant[6] = "";	// chha
		this.engConsonant[7] = "j";	// ja
		this.engConsonant[8] = "";	// jha
		this.engConsonant[9] = "Nj";	// Nja
		this.engConsonant[10] = "T";	// Ta
		this.engConsonant[11] = "";	// Tha
		this.engConsonant[12] = "";	// Da
		this.engConsonant[13] = "";	// Dha
		this.engConsonant[14] = "N";	// Na
		this.engConsonant[15] = "t";	// ta
		this.engConsonant[16] = "";	// tha
		this.engConsonant[17] = "";	// da
		this.engConsonant[18] = "";	// dha
		this.engConsonant[19] = "n";	// na
		this.engConsonant[20] = "n_";	// na dot
		this.engConsonant[21] = "p";	// pa
		this.engConsonant[22] = "";	// pha
		this.engConsonant[23] = "";	// ba
		this.engConsonant[24] = "";	// bha
		this.engConsonant[25] = "m";	// ma
		this.engConsonant[26] = "y";	// ya
		this.engConsonant[27] = "r";	// ra
		this.engConsonant[28] = "R";	// ra dot
		this.engConsonant[29] = "l";	// la
		this.engConsonant[30] = "L";	// La
		this.engConsonant[31] = "zh";	// La dot
		this.engConsonant[32] = "v";	// va
		this.engConsonant[33] = "";			// sha
		this.engConsonant[34] = "Sh";	// Sha
		this.engConsonant[35] = "s";	// sa
		this.engConsonant[36] = "h";	// ha



		//Tamil-Language Conjuncts

		this.langConjuncts["X"]='\u0B95\u0BCD\u0BB7';
		this.langConjuncts["x"]='\u0B95\u0BCD\u0BB7';
		this.langConjuncts["c"]='\u0B95';
		this.langConjuncts["kh"]='\u0B95';
		this.langConjuncts["g"]='\u0B95';
		this.langConjuncts["gh"]='\u0B95';
		this.langConjuncts["chh"]='\u0B9A';
		this.langConjuncts["jh"]='\u0B9C';
		this.langConjuncts["Th"]='\u0B9F';
		this.langConjuncts["D"]='\u0B9F';
		this.langConjuncts["Dh"]='\u0B9F';
		this.langConjuncts["th"]='\u0BA4';
		this.langConjuncts["d"]='\u0BA4';
		this.langConjuncts["dh"]='\u0BA4';
		this.langConjuncts["ph"]='\u0BAA';
		this.langConjuncts["b"]='\u0BAA';
		this.langConjuncts["bh"]='\u0BAA';
		this.langConjuncts["w"]='\u0BB5';
		this.langConjuncts["q"]='\u0B95';
		this.langConjuncts["z"]='\u0B9C';
		this.langConjuncts["f"]='\u0BAA';
		this.langConjuncts["kSh"]='\u0B95\u0BCD\u0BB7';



		//Tamil-Correct User Spell array for specific words
		this.userSpell["a"]="a";



		//Tamil- Special word replaces.
		this.engReplace[0] = "ii";
		this.engReplace[1] = "I";
		this.engReplace[2] = "uu";
		this.engReplace[3] = "U";
		this.engReplace[4] = "ei";
		this.engReplace[5] = "ou"; 

		this.engReplaceBy[0] = "ee";
		this.engReplaceBy[1] = "ee";
		this.engReplaceBy[2] = "oo";
		this.engReplaceBy[3] = "oo";
		this.engReplaceBy[4] = "ai";
		this.engReplaceBy[5] = "au";
	}
	else if(kbdid == INSCRIPT)
	{
	//03/04/07
			this.InArray["`"] =	'\u0BCA';      
			this.InArray["1"] =	 '1';      
			this.InArray["2"] =	 '2';      
			this.InArray["3"] =	 '3';      
			this.InArray["4"] =	 '4';      
			this.InArray["5"] =	 '5';      
			this.InArray["6"] =	 '6';      
			this.InArray["7"] =	 '7';      
			this.InArray["8"] =	 '8';      
			this.InArray["9"] =	 '9';      
			this.InArray["0"] =	 '0';      
			this.InArray["-"] =	 '';      
			this.InArray["="] =	 '';      
			this.InArray["\\"] =	 '';      
			this.InArray["q"] =	 '\u0BCC';      
			this.InArray["w"] =	 '\u0BC8';      
			this.InArray["e"] =	 '\u0BBE';      
			this.InArray["r"] =	 '\u0BC0';      
			this.InArray["t"] =	 '\u0BC2';      
			this.InArray["y"] =	 '\u0BAA';      
			this.InArray["u"] =	 '\u0BB9';      
			this.InArray["i"] =	 '\u0B95';      
			this.InArray["o"] =	 '\u0BA4';      
			this.InArray["p"] =	 '\u0B9C';      
			this.InArray["["] =	 '\u0B9F';      
			this.InArray["]"] =	 '';      
			this.InArray["a"] =	 '\u0BCB';      
			this.InArray["s"] =	 '\u0BC7';      
			this.InArray["d"] =	 '\u0BCD';      
			this.InArray["f"] =	 '\u0BBF';      
			this.InArray["g"] =	 '\u0BC1';      
			this.InArray["h"] =	 '\u0BAA';      
			this.InArray["j"] =	 '\u0BB0';      
			this.InArray["k"] =	 '\u0B95';      
			this.InArray["l"] =	 '\u0BA4';      
			this.InArray[";"] =	 '\u0B9A';      
			this.InArray["\'"] =	 '\u0B9F';      
			this.InArray["z"] =	 '\u0BC6';      
			this.InArray["x"] =	 '';      
			this.InArray["c"] =	 '\u0BAE';      
			this.InArray["v"] =	 '\u0BA8';      
			this.InArray["b"] =   '\u0BB5';      
			this.InArray["n"] =	 '\u0BB2';      
			this.InArray["m"] =	 '\u0BB8';      
			this.InArray[","] =	 ',';      
			this.InArray["."] =	 '.';      
			this.InArray["/"] =	 '\u0BAF';      
			
			//this.InArray with shift
			this.InArray["~"] =	 '\u0B92'; 
			this.InArray["!"] =	 '';      
			this.InArray["@"] =	 '';      
			this.InArray["#"] =	 '';      
			this.InArray["$"] =	 '';      
			this.InArray["%"] =	 '';      
			this.InArray["^"] =	 '';      
			this.InArray["&"] =	 '\u0B95\u0BCD\u0BB7';      
			this.InArray["*"] =	 '\u0BB5\u0BCD\u0BB0';      
			this.InArray["("] =	 '';      
			this.InArray[")"] =	 '';      
			this.InArray["_"] =	 '\u0B83';      
			this.InArray["+"] =	 '';      
			this.InArray["|"] =	 '';      
			this.InArray["Q"] =	 '\u0B94';      
			this.InArray["W"] =	 '\u0B90';      
			this.InArray["E"] =	 '\u0B86';      
			this.InArray["R"] =	 '\u0B88';      
			this.InArray["T"] =	 '\u0B8A';      
			this.InArray["Y"] =	 '\u0BAA';      
			this.InArray["U"] =	 '\u0B99';      
			this.InArray["I"] =	 '\u0B95';      
			this.InArray["O"] =	 '\u0BA4';      
			this.InArray["P"] =	 '\u0B9A';      
			this.InArray["{"] =	 '\u0B9F';      
			this.InArray["}"] =	 '\u0B9E';      
			this.InArray["A"] =	 '\u0B93';      
			this.InArray["S"] =	 '\u0B8F';      
			this.InArray["D"] =	 '\u0B85';      
			this.InArray["F"] =	 '\u0B87';      
			this.InArray["G"] =	 '\u0B89';      
			this.InArray["H"] =	 '\u0BAA';      
			this.InArray["J"] =	 '\u0BB1';      
			this.InArray["K"] =	 '\u0B95';      
			this.InArray["L"] =	 '\u0BA4';      
			this.InArray[":"] =	 '\u0B9A';      
			this.InArray["\""] =	 '\u0B9F';      
			this.InArray["Z"] =	 '\u0B8E';      
			this.InArray["X"] =	 '';      
			this.InArray["C"] =	 '\u0BA3';      
			this.InArray["V"] =	 '\u0BA9';      
			this.InArray["B"] =	 '\u0BB4';      
			this.InArray["N"] =	 '\u0BB3';      
			this.InArray["M"] =	 '\u0BB7';      
			this.InArray["<"] =	 '\u0BB7';      
			this.InArray[">"] =	 '';      
			this.InArray["?"] =	 '\u0BAF';      
			this.InArray[" "] =	 '';      		
				
	}

}




function Initialize_GU(kbdid)
{
	if(kbdid == PHONETIC)
	{
		//03/04/07
		this.vowelLength = 16;
		this.consonantLength =	37;
		this.conjunctLength = 16;
		this.nuktaLength =		8;

		this.langConjuncts = {};

		this.stringInvite="\u0a86\u0aae\u0a82\u0aa4\u0acd\u0ab0\u0aa3";
		this.stringWebSeacrh="\u0ab6\u0acb\u0aa7";

		//Gujarati-  Unicode Keyboard array
		this.uniKeyboardchars = [ ["a", "ai", "ka", "cha", "Ta", "ta", "pa", "ya", "sha"],
							 ["aa", "o", "kha", "chha", "Tha", "tha", "pha", "ra", "Sha"],
							 ["i", "au", "ga", "ja", "Da", "da", "ba", "la", "sa"],
							 ["ee", "Ra", "gha", "jha", "Dha", "dha", "bha", "La", "ha"],
							 ["u", "a^", "Nga", "Nja", "Na", "na", "ma", "va", "kSha"],
							 ["oo", "aH", "&nbsp;", "&nbsp;", "D_a", "&nbsp;", "&nbsp;", "&nbsp;", "tra"],
							 ["e", "aM", "&nbsp;", "&nbsp;", "Dh_a", "&nbsp;", "&nbsp;", "&nbsp;", "Gya"],
							];



		//Gujarati- Unicode Keyboard array dislpay in dynamic help
		this.uniKeywordHelpChar = [ ["a", "ai", "k", "ch", "T", "t", "p", "y", "sh"],
							 ["aa", "o", "kh", "chh", "Th", "th", "ph", "r", "Sh"],
							 ["i", "au", "g", "j", "D", "d", "b", "l", "s"],
							 ["ee", "R", "gh", "jh", "Dh", "dh", "bh", "L", "h"],
							 ["u", "a^", "Ng", "Nj", "N", "n", "m", "v", "kSh"],
							 ["oo", "aH", "&nbsp;", "&nbsp;", "D_", "&nbsp;", "&nbsp;", "&nbsp;", "tr"],
							 ["e", "aM", "&nbsp;", "&nbsp;", "Dh_", "&nbsp;", "&nbsp;", "&nbsp;", "Gy"],
							];


		//Gujarati- Characters which can not be converted to LowerCase.
		this.charOnlyUppercase = ["A", "D", "G","H","L","M","N","O","R","S","T","X","I","U"];

	     //Gujarati- Vowel Modifiers.
		this.VowelModifiers = ["^","H","M"];


		//Gujarati- English Vowels and Matra to be used for English to Unicode conversion

		this.engToUniVowel[0] = "a";	// a vowel
		this.engToUniVowel[1] = "aa";	// aa
		this.engToUniVowel[2] = "i";	// i
		this.engToUniVowel[3] = "ee";	// ee
		this.engToUniVowel[4] = "u";	// u
		this.engToUniVowel[5] = "oo";	// oo
		this.engToUniVowel[6] = "R";	// Ra
		this.engToUniVowel[7] = "";	// reserved
		this.engToUniVowel[8] = "A";	// A
		this.engToUniVowel[9] = "";	// reserved
		this.engToUniVowel[10] = "e";	// e
		this.engToUniVowel[11] = "ai";	// ei/ai
		this.engToUniVowel[12] = "O";	// O chandra
		this.engToUniVowel[13] = "";	// reserved
		this.engToUniVowel[14] = "o";	// o
		this.engToUniVowel[15] = "au";	// ou/au




		//Gujarati- English Consonant

		this.engConsonant[0] = "k";	// ka
		this.engConsonant[1] = "kh";	// kha
		this.engConsonant[2] = "g";	// ga
		this.engConsonant[3] = "gh";	// gha
		this.engConsonant[4] = "Ng";	// Nga
		this.engConsonant[5] = "ch";	// cha
		this.engConsonant[6] = "chh";	// chha
		this.engConsonant[7] = "j";	// ja
		this.engConsonant[8] = "jh";	// jha
		this.engConsonant[9] = "Nj";	// Nja
		this.engConsonant[10] = "T";	// Ta
		this.engConsonant[11] = "Th";	// Tha
		this.engConsonant[12] = "D";	// Da
		this.engConsonant[13] = "Dh";	// Dha
		this.engConsonant[14] = "N";	// Na
		this.engConsonant[15] = "t";	// ta
		this.engConsonant[16] = "th";	// tha
		this.engConsonant[17] = "d";	// da
		this.engConsonant[18] = "dh";	// dha
		this.engConsonant[19] = "n";	// na
		this.engConsonant[20] = "";		// reserved
		this.engConsonant[21] = "p";	// pa
		this.engConsonant[22] = "ph";	// pha
		this.engConsonant[23] = "b";	// ba
		this.engConsonant[24] = "bh";	// bha
		this.engConsonant[25] = "m";	// ma
		this.engConsonant[26] = "y";	// ya
		this.engConsonant[27] = "r";	// ra
		this.engConsonant[28] = "";	// reserved
		this.engConsonant[29] = "l";	// la
		this.engConsonant[30] = "L";	// La
		this.engConsonant[31] = "";			// reserved
		this.engConsonant[32] = "v";	// va
		this.engConsonant[33] = "sh";	// sha
		this.engConsonant[34] = "Sh";	// Sha
		this.engConsonant[35] = "s";	// sa
		this.engConsonant[36] = "h";	// ha



		//Gujarati- Language Conjumcts

		this.langConjuncts["D_"] = '\u0AA1\u0ABC';	//D nukta
		this.langConjuncts["Dh_"] = '\u0AA2\u0ABC';	//Dh_ nukta		
		this.langConjuncts["X"]	= '\u0A95\u0ACD\u0AB7'; 	 //kSha	 
		this.langConjuncts["x"]	 = '\u0A95\u0ACD\u0AB8'; //ks	
		this.langConjuncts["Gy"]	= '\u0A9C\u0ACD\u0A9E'; //jNja 
		this.langConjuncts["dny"] = '\u0A9C\u0ACD\u0A9E'; //jNja
		this.langConjuncts["f"]	= '\u0AAB'; //ph
		this.langConjuncts["w"] = '\u0AB5';	//v
		this.langConjuncts["c"]	 = '\u0A95';	//k
		this.langConjuncts["q"]	 = '\u0A95';	//k
		this.langConjuncts["z"]	 = '\u0A9C'; //s
		this.langConjuncts["nn"] = '\u0A48\u0ACD\u0A48'; 	//nn
		this.langConjuncts["nm"] = '\u0A48\u0ACD\u0AAE'; //nm
		this.langConjuncts["ny"] = '\u0A48\u0ACD\u0AAF';	 //ny
		this.langConjuncts["kSh"] = '\u0A95\u0ACD\u0AB7';
		this.langConjuncts["tr"] = '\u0AA4\u0ACD\u0AB0';




		//Gujarati- Correct User Spell array for specific words
		this.userSpell["a"]="a";




		//Gujarati- Special word replaces.
		this.engReplace[0] = "ii";
		this.engReplace[1] = "I";
		this.engReplace[2] = "uu";
		this.engReplace[3] = "U";
		this.engReplace[4] = "ei";
		this.engReplace[5] = "ou";

		this.engReplaceBy[0] = "ee";
		this.engReplaceBy[1] = "ee";
		this.engReplaceBy[2] = "oo";
		this.engReplaceBy[3] = "oo";
		this.engReplaceBy[4] = "ai";
		this.engReplaceBy[5] = "au";
	}
	else if(kbdid == INSCRIPT)
	{
		//03/04/07
		this.InArray["`"] =	'\u2019';
		this.InArray["1"] =	 '\u0AE7';
		this.InArray["2"] =	 '\u0AE8';
		this.InArray["3"] =	 '\u0AE9';
		this.InArray["4"] =	 '\u0AEA';
		this.InArray["5"] =	 '\u0AEB';
		this.InArray["6"] =	 '\u0AEC';
		this.InArray["7"] =	 '\u0AED';
		this.InArray["8"] =	 '\u0AEE';
		this.InArray["9"] =	 '\u0AEF';
		this.InArray["0"] =	 '\u0AE6';
		this.InArray["-"] =	 '-';
		this.InArray["="] =	 '\u0AC3';
		this.InArray["\\"] =	 '\u0AC9';
		this.InArray["q"] =	 '\u0ACC';
		this.InArray["w"] =	 '\u0AC8';
		this.InArray["e"] =	 '\u0ABE';
		this.InArray["r"] =	 '\u0AC0';
		this.InArray["t"] =	 '\u0AC2';
		this.InArray["y"] =	 '\u0AAC';
		this.InArray["u"] =	 '\u0AB9';
		this.InArray["i"] =	 '\u0A97';
		this.InArray["o"] =	 '\u0AA6';
		this.InArray["p"] =	 '\u0A9C';
		this.InArray["["] =	 '\u0AA1';
		this.InArray["]"] =	 '\u0ABC';
		this.InArray["a"] =	 '\u0ACB';
		this.InArray["s"] =	 '\u0AC7';
		this.InArray["d"] =	 '\u0ACD';
		this.InArray["f"] =	 '\u0ABF';
		this.InArray["g"] =	 '\u0AC1';
		this.InArray["h"] =	 '\u0AAA';
		this.InArray["j"] =	 '\u0AB0';
		this.InArray["k"] =	 '\u0A95';
		this.InArray["l"] =	 '\u0AA4';
		this.InArray[";"] =	 '\u0A9A';
		this.InArray["\'"] =	 '\u0A9F';
		this.InArray["z"] =	 '';
		this.InArray["x"] =	 '\u0A82';
		this.InArray["c"] =	 '\u0AAE';
		this.InArray["v"] =	 '\u0AA8';
		this.InArray["b"] =   '\u0AB5';
		this.InArray["n"] =	 '\u0AB2';
		this.InArray["m"] =	 '\u0AB8';
		this.InArray[","] =	 ',';
		this.InArray["."] =	 '.';
		this.InArray["/"] =	 '\u0AAF';
		
		//this.InArray with shift
		this.InArray["~"] =	 '~'; 
		this.InArray["!"] =	 '\u0A8D';
		this.InArray["@"] =	 '\u0AC5';
		this.InArray["#"] =	 '\u0ACD\u0AB0';
		this.InArray["$"] =	 '\u0AB0\u0ACD';
		this.InArray["%"] =	 '\u0A9C\u0ACD\u0A9E';
		this.InArray["^"] =	 '\u0AA4\u0ACD\u0AB0';
		this.InArray["&"] =	 '\u0A95\u0ACD\u0AB7';
		this.InArray["*"] =	 '\u0AB6\u0ACD\u0AB0';
		this.InArray["("] =	 '(';
		this.InArray[")"] =	 ')';
		this.InArray["_"] =	 '\u0A83';
		this.InArray["+"] =	 '\u0A8B';
		this.InArray["|"] =	 '\u0A91';
		this.InArray["Q"] =	 '\u0A94';
		this.InArray["W"] =	 '\u0A90';
		this.InArray["E"] =	 '\u0A86';
		this.InArray["R"] =	 '\u0A88';
		this.InArray["T"] =	 '\u0A8A';
		this.InArray["Y"] =	 '\u0AAD';
		this.InArray["U"] =	 '\u0A99';
		this.InArray["I"] =	 '\u0A98';
		this.InArray["O"] =	 '\u0AA7';
		this.InArray["P"] =	 '\u0A9D';
		this.InArray["{"] =	 '\u0AA2';
		this.InArray["}"] =	 '\u0A9E';
		this.InArray["A"] =	 '\u0A93';
		this.InArray["S"] =	 '\u0A8F';
		this.InArray["D"] =	 '\u0A85';
		this.InArray["F"] =	 '\u0A87';
		this.InArray["G"] =	 '\u0A89';
		this.InArray["H"] =	 '\u0AAB';
		this.InArray["J"] =	 '';
		this.InArray["K"] =	 '\u0A96';
		this.InArray["L"] =	 '\u0AA5';
		this.InArray[":"] =	 '\u0A9B';
		this.InArray["\""] =	 '\u0AA0';
		this.InArray["Z"] =	 '';
		this.InArray["X"] =	 '\u0A81';
		this.InArray["C"] =	 '\u0AA3';
		this.InArray["V"] =	 '\u2018';
		this.InArray["B"] =	 '\u2019';
		this.InArray["N"] =	 '\u0AB3';
		this.InArray["M"] =	 '\u0AB6';
		this.InArray["<"] =	 '\u0AB7';
		this.InArray[">"] =	 '|';
		this.InArray["?"] =	 '?';
		this.InArray[" "] =	 ' ';		
	}
}

function Initialize_PN(kbdid)
{
	if(kbdid == PHONETIC)//03/04/07
	{
		this.vowelLength = 16;
		this.consonantLength =   37;
		this.conjunctLength = 10;
		this.nuktaLength =       8;

		this.langConjuncts = {};

		this.stringInvite="\u0a38\u0a71\u0a26\u0a23\u0a3e";
		this.stringWebSeacrh="\u0a16\u0a4b\u0a1c";

		//Punjabi- Unicode Keyboard array
		this.uniKeyboardchars =  [  ["a", "ai", "ka", "cha", "Ta", "ta", "pa", "ya", "sha"],
								["aa", "o", "kha", "chha", "Tha", "tha", "pha", "ra", "sa"],
								["i", "au", "ga", "ja", "Da", "da", "ba", "la", "ha"],
								["ee", "a^", "gha", "jha", "Dha", "dha", "bha", "La", "&nbsp;"],
								["u", "&nbsp;", "Nga", "Nja", "Na", "na", "ma", "va", "&nbsp;"],
								["oo", "&nbsp;", "Kha", "za", "D_a", "&nbsp;", "Fa", "&nbsp;", "&nbsp;"],
								["e", "&nbsp;", "Ga", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;"],
								];

		//Punjabi- Unicode Keyboard array dislpay in dynamic help

		this.uniKeywordHelpChar = [ ["a", "ai", "k", "ch", "T", "t", "p", "y", "sh"],
								["aa", "o", "kh", "chh", "Th", "th", "ph", "r", "s"],
								["i", "au", "g", "j", "D", "d", "b", "l", "h"],
								["ee", "a^", "gh", "jh", "Dh", "dh", "bh", "L", "&nbsp;"],
								["u", "&nbsp;", "Ng", "Nj", "N", "n", "m", "v", "&nbsp;"],
								["oo", "&nbsp;", "Kh", "z", "D_", "&nbsp;", "F", "&nbsp;", "&nbsp;"],
								["e", "&nbsp;", "G", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;"],
								];

		//Punjabi- Characters which can not be converted to LowerCase.
		this.charOnlyUppercase = ["D", "F", "G","I","K","L","N","T","U","H"];	  

	     //Punjabi- Vowel Modifiers.
		this.VowelModifiers = ["^"];

		//Punjabi- English Vowels and Matra to be used for English to Unicode conversion

		this.engToUniVowel[0]  =  "a";
		this.engToUniVowel[1]  = "aa";
		this.engToUniVowel[2]  =  "i";
		this.engToUniVowel[3]  = "ee";
		this.engToUniVowel[4]  =  "u";
		this.engToUniVowel[5]  = "oo";
		this.engToUniVowel[6]  =   "";		//space
		this.engToUniVowel[7]  =   "";		//space
		this.engToUniVowel[8]  =   "";		//space
		this.engToUniVowel[9]  =   "";		//space
		this.engToUniVowel[10] =  "e";
		this.engToUniVowel[11] = "ai";
		this.engToUniVowel[12] =   "";		//space
		this.engToUniVowel[13] =   "";		//space
		this.engToUniVowel[14] =  "o";
		this.engToUniVowel[15] = "au";


		//Punjabi- English Consonant

		this.engConsonant[0]  =   "k";
		this.engConsonant[1]  =  "kh";
		this.engConsonant[2]  =   "g";
		this.engConsonant[3]  =  "gh";
		this.engConsonant[4]  =  "Ng";
		this.engConsonant[5]  =  "ch";
		this.engConsonant[6]  = "chh";
		this.engConsonant[7]  =   "j";
		this.engConsonant[8]  =  "jh";
		this.engConsonant[9]  =  "Nj";
		this.engConsonant[10] =   "T";
		this.engConsonant[11] =  "Th";
		this.engConsonant[12] =   "D";
		this.engConsonant[13] =  "Dh";
		this.engConsonant[14] =   "N";
		this.engConsonant[15] =   "t";
		this.engConsonant[16] =  "th";
		this.engConsonant[17] =   "d";
		this.engConsonant[18] =  "dh";
		this.engConsonant[19] =   "n";
		this.engConsonant[20] =    "";		//space bcoz at this location no word is used for hindi language 
		this.engConsonant[21] =   "p";
		this.engConsonant[22] =  "ph"; 
		this.engConsonant[23] =   "b";
		this.engConsonant[24] =  "bh";
		this.engConsonant[25] =   "m";
		this.engConsonant[26] =   "y";
		this.engConsonant[27] =   "r";
		this.engConsonant[28] =    "";		//space
		this.engConsonant[29] =   "l";
		this.engConsonant[30] =   "L";
		this.engConsonant[31] =    "";		//space
		this.engConsonant[32] =   "v";
		this.engConsonant[33] =  "sh";
		this.engConsonant[34] =    "";		//Sh is not in punjabi
		this.engConsonant[35] =   "s";
		this.engConsonant[36] =   "h";


		//Punjabi- English Conjuncts array
		this.langConjuncts["Kh"]  = '\u0A59'; //kh nukta
		this.langConjuncts["G"]   = '\u0A5A';	//g nukta 
		this.langConjuncts["z"]   = '\u0A5B';	//j nukta
		this.langConjuncts["D_"] = '\u0a5c';	//D nukta
		this.langConjuncts["F"]  = '\u0A5E';	//f nukta 
		this.langConjuncts["f"]   = '\u0A2B';   //ph
		this.langConjuncts["w"]  = '\u0A35';	//v
		this.langConjuncts["c"]  = '\u0A15';	//k
		this.langConjuncts["H"] = '\u0A39';	//h
		this.langConjuncts["q"] = '\u0A15';


		//Punjabi- Correct User Spell array for specific words
		this.userSpell["a"]="a";


		//Punjabi- Special word replaces.
		this.engReplace[0] = "ii";
		this.engReplace[1] = "I";
		this.engReplace[2] = "uu";
		this.engReplace[3] = "U";
		this.engReplace[4] = "ei";
		this.engReplace[5] = "ou";
		this.engReplace[6] = "x";

		this.engReplaceBy[0] = "ee";
		this.engReplaceBy[1] = "ee";
		this.engReplaceBy[2] = "oo";
		this.engReplaceBy[3] = "oo";
		this.engReplaceBy[4] = "ai";
		this.engReplaceBy[5] = "au";
		this.engReplaceBy[6] = "ks";
	}
	else if(kbdid == INSCRIPT)
	{
		//03/04/07
					this.InArray["`"] =	'';      
					this.InArray["1"] =	'\u0A67';      
					this.InArray["2"] =	'\u0A68';      
					this.InArray["3"] =	'\u0A69';      
					this.InArray["4"] =	'\u0A6A';      
					this.InArray["5"] =	'\u0A6B';      
					this.InArray["6"] =	'\u0A6C';      
					this.InArray["7"] =	'\u0A6D';      
					this.InArray["8"] =	 '\u0A6D';      
					this.InArray["9"] =	 '\u0A6F';      
					this.InArray["0"] =	  '\u0A66';      
					this.InArray["-"] =	 '-';      
					this.InArray["="] =	 '=';      
					this.InArray["\\"] =	 '';      
					this.InArray["q"] =	  '\u0A4C';      
					this.InArray["w"] =	 '\u0A48';      
					this.InArray["e"] =	 '\u0A3E';      
					this.InArray["r"] =	 '\u0A40';      
					this.InArray["t"] =	 '\u0A42';      
					this.InArray["y"] =	 '\u0A2C';      
					this.InArray["u"] =	 '\u0A39';      
					this.InArray["i"] =	 '\u0A17';      
					this.InArray["o"] =	 '\u0A26';      
					this.InArray["p"] =	 '\u0A1C';      
					this.InArray["["] =	 '\u0A21';      
					this.InArray["]"] =	 '\u0A3C';      
					this.InArray["a"] =	 '\u0A4B';      
					this.InArray["s"] =	 '\u0A47';      
					this.InArray["d"] =	 '\u0A4D';      
					this.InArray["f"] =	 '\u0A3F';      
					this.InArray["g"] =	 '\u0A41';      
					this.InArray["h"] =	 '\u0A2A';      
					this.InArray["j"] =	 '\u0A30';      
					this.InArray["k"] =	 '\u0A15';      
					this.InArray["l"] =	 '\u0A24';      
					this.InArray[";"] =	 '\u0A1A';      
					this.InArray["\'"] =	 '\u0A1F';      
					this.InArray["z"] =	 '';      
					this.InArray["x"] =	 '\u0A02';      
					this.InArray["c"] =	 '\u0A2E';      
					this.InArray["v"] =	 '\u0A28';      
					this.InArray["b"] =   '\u0A35';      
					this.InArray["n"] =	 '\u0A32';      
					this.InArray["m"] =	 '\u0A38';      
					this.InArray[","] =	 '';      
					this.InArray["."] =	 '';      
					this.InArray["/"] =	 '\u0A2F';      
					
					//this.InArray with shift
					this.InArray["~"] =	 ''; 
					this.InArray["!"] =	 '!';      
					this.InArray["@"] =	 '';      
					this.InArray["#"] =	 '\u0A4D\u0A30';      
					this.InArray["$"] =	 '';      
					this.InArray["%"] =	 '%';      
					this.InArray["^"] =	 '';      
					this.InArray["&"] =	 '';      
					this.InArray["*"] =	 '*';      
					this.InArray["("] =	 '(';      
					this.InArray[")"] =	 ')';      
					this.InArray["_"] =	 '_';      
					this.InArray["+"] =	 '+';      
					this.InArray["|"] =	 '|';      
					this.InArray["Q"] =	 '\u0A14';      
					this.InArray["W"] =	 '\u0A10';      
					this.InArray["E"] =	 '\u0A06';      
					this.InArray["R"] =	 '\u0A08';      
					this.InArray["T"] =	 '\u0A0A';      
					this.InArray["Y"] =	 '\u0A2D';      
					this.InArray["U"] =	 '\u0A19';      
					this.InArray["I"] =	 '\u0A18';      
					this.InArray["O"] =	 '\u0A27';      
					this.InArray["P"] =	 '\u0A1D';      
					this.InArray["{"] =	 '\u0A22';      
					this.InArray["}"] =	 '\u0A1E';      
					this.InArray["A"] =	 '\u0A13';      
					this.InArray["S"] =	 '\u0A0F';      
					this.InArray["D"] =	 '\u0A05';      
					this.InArray["F"] =	 '\u0A07';      
					this.InArray["G"] =	 '\u0A09';      
					this.InArray["H"] =	 '\u0A2B';      
					this.InArray["J"] =	 '';      
					this.InArray["K"] =	 '\u0A16';      
					this.InArray["L"] =	 '\u0A25';      
					this.InArray[":"] =	 '\u0A1B';      
					this.InArray["'"] =	 '\u0A20';      
					this.InArray["Z"] =	 '';      
					this.InArray["X"] =	 '';      
					this.InArray["C"] =	 '\u0A23';      
					this.InArray["V"] =	 '';      
					this.InArray["B"] =	 '';      
					this.InArray["N"] =	 '';      
					this.InArray["M"] =	 '\u0A36';      
					this.InArray["<"] =	 '';      
					this.InArray[">"] =	 '';      
					this.InArray["?"] =	 '?';      
					this.InArray[" "] =	 '';      		
	
						
	}
}

function Initialize_BN(kbdid)
{
	if(kbdid == PHONETIC)//03/04/07
	{
		this.vowelLength = 16;
		this.consonantLength =   37;
		this.conjunctLength = 12;
		this.nuktaLength =       8;
		this.langConjuncts = {};

		this.stringInvite="\u09a8\u09bf\u09ae\u09a8\u09cd\u09a4\u09cd\u09b0\u09a8";
		this.stringWebSeacrh="\u0993\u09df\u09c7\u09ac \u09b8\u09a8\u09cd\u09a7\u09be\u09a8";	


		//Bengali- Unicode Keyboard array
		this.uniKeyboardchars =  [  ["a", "ai", "ka", "cha", "Ta", "ta", "pa", "ya", "sha"],
								["aa", "o", "kha", "chha", "Tha", "tha", "pha", "ra", "Sha"],
								["i", "au", "ga", "ja", "Da", "da", "ba", "la", "sa"],
								["ee", "R", "gha", "jha", "Dha", "dha", "bha", "Ya", "ha"],
								["u", "a^", "Nga", "Nja", "Na", "na", "ma", "&nbsp;", "kSha"],
								["oo", "aH", "&nbsp;", "&nbsp;", "D_a", "&nbsp;", "&nbsp;", "&nbsp;", "tka"],
								["e", "aM", "&nbsp;", "&nbsp;", "Dh_a", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;"],
								];



		//Bengali- Unicode Keyboard array dislpay in dynamic help

		this.uniKeywordHelpChar =  [  ["a", "ai", "k", "ch", "T", "t", "p", "y", "sh"],
								["aa", "o", "kh", "chh", "Th", "th", "ph", "r", "Sh"],
								["i", "au", "g", "j", "D", "d", "b", "l", "s"],
								["ee", "R", "gh", "jh", "Dh", "dh", "bh", "Y", "h"],
								["u", "a^", "Ng", "Nj", "N", "n", "m", "&nbsp;", "kSh"],
								["oo", "aH", "&nbsp;", "&nbsp;", "D_", "&nbsp;", "&nbsp;", "&nbsp;", "tk"],
								["e", "aM", "&nbsp;", "&nbsp;", "Dh_", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;"],
								];


		//Bengali- Characters which can not be converted to LowerCase.
		this.charOnlyUppercase = ["M","H","N","T","D", "S", "R", "Y","X","I","U"];	  

	     //Bengali- Vowel Modifiers.
		this.VowelModifiers = ["^","H","M"];

		//Bengali- English Vowels and Matra to be used for English to Unicode conversion

		this.engToUniVowel[0] = "a";
		this.engToUniVowel[1] = "aa";
		this.engToUniVowel[2] = "i";
		this.engToUniVowel[3] = "ee";
		this.engToUniVowel[4] = "u";
		this.engToUniVowel[5] = "oo";
		this.engToUniVowel[6] = "R";
		this.engToUniVowel[7] = "";
		this.engToUniVowel[8] = "";
		this.engToUniVowel[9] = "";
		this.engToUniVowel[10] = "e";
		this.engToUniVowel[11] = "ai";
		this.engToUniVowel[12] = "";
		this.engToUniVowel[13] = "";
		this.engToUniVowel[14] = "o";
		this.engToUniVowel[15] = "au";



		//Bengali- English Consonant

		this.engConsonant[0] = "k";
		this.engConsonant[1] = "kh";
		this.engConsonant[2] = "g";
		this.engConsonant[3] = "gh";
		this.engConsonant[4] = "Ng";
		this.engConsonant[5] = "ch";
		this.engConsonant[6] = "chh";
		this.engConsonant[7] = "j";
		this.engConsonant[8] = "jh";
		this.engConsonant[9] = "Nj";
		this.engConsonant[10] = "T";
		this.engConsonant[11] = "Th";
		this.engConsonant[12] = "D";
		this.engConsonant[13] = "Dh";
		this.engConsonant[14] = "N";
		this.engConsonant[15] = "t";
		this.engConsonant[16] = "th";
		this.engConsonant[17] = "d";
		this.engConsonant[18] = "dh";
		this.engConsonant[19] = "n";
		this.engConsonant[20] = "";//space bcoz at this location no word is for hindi language 
		this.engConsonant[21] = "p";
		this.engConsonant[22] = "ph";//ph and f are same 
		this.engConsonant[23] = "b";
		this.engConsonant[24] = "bh";
		this.engConsonant[25] = "m";
		this.engConsonant[26] = "y";
		this.engConsonant[27] = "r";
		this.engConsonant[28] = "";
		this.engConsonant[29] = "l";
		this.engConsonant[30] = "";
		this.engConsonant[31] = "";
		this.engConsonant[32] = "";
		this.engConsonant[33] = "sh";
		this.engConsonant[34] = "Sh";
		this.engConsonant[35] = "s";
		this.engConsonant[36] = "h";

		//Bengali- English Conjuncts array
		this.langConjuncts["D_"]	= '\u09DC';	//D_
		this.langConjuncts["Dh_"]	= '\u09DD';	//Dh_
		this.langConjuncts["Y"]	= '\u09DF';	//Y 
		this.langConjuncts["kSh"] = '\u0995\u09CD\u09B7';	//kSh
		this.langConjuncts["X"]	= '\u0995\u09CD\u09B7';	//kS
		this.langConjuncts["x"]	= '\u0995\u09CD\u09B8';	//ks
		this.langConjuncts["c"]	= '\u0995';	//k
		this.langConjuncts["f"]	= '\u09AB';	//ph
		this.langConjuncts["q"]	= '\u0995';	//k
		this.langConjuncts["v"]	= '\u09AC';	//b
		this.langConjuncts["w"]	= '\u09AC';	//b
		this.langConjuncts["z"]	= '\u099C';	//j
		this.langConjuncts["nn"]	= '\u09A8\u09CD\u09A8';	//nn
		this.langConjuncts["nm"]	= '\u09A8\u09CD\u09AE';	//nm
		this.langConjuncts["ny"]	= '\u09A8\u09CD\u09AF';	//ny



		//Bengali- Correct User Spell array for specific words
		this.userSpell["a"]="a";


		//Bengali- Special word replaces.
		this.engReplace[0] = "ii";
		this.engReplace[1] = "I";
		this.engReplace[2] = "uu";
		this.engReplace[3] = "U";
		this.engReplace[4] = "ei";
		this.engReplace[5] = "ou";

		this.engReplaceBy[0] = "ee";
		this.engReplaceBy[1] = "ee";
		this.engReplaceBy[2] = "oo";
		this.engReplaceBy[3] = "oo";
		this.engReplaceBy[4] = "ai";
		this.engReplaceBy[5] = "au";
	}
	else if(kbdid == INSCRIPT)
	{
	
	//03/04/07 wrong
			this.InArray["`"] =	'';
			this.InArray["1"] =	 '\u09E7';
			this.InArray["2"] =	 '\u09E8';
			this.InArray["3"] =	 '\u09E9';
			this.InArray["4"] =	 '\u09EA';
			this.InArray["5"] =	 '\u09EB';
			this.InArray["6"] =	 '\u09EC';
			this.InArray["7"] =	 '\u09ED';
			this.InArray["8"] =	 '\u09EE';
			this.InArray["9"] =	 '\u09EF';
			this.InArray["0"] =	 '\u09E6';
			this.InArray["-"] =	 '-';
			this.InArray["="] =	 '\u09C3';
			this.InArray["\\"] =	 '\u09C3';
			this.InArray["q"] =	 '\u09CC';
			this.InArray["w"] =	 '\u09C8';
			this.InArray["e"] =	 '\u09BE';
			this.InArray["r"] =	 '\u09C0';
			this.InArray["t"] =	 '\u09C2';
			this.InArray["y"] =	 '\u09AC';
			this.InArray["u"] =	 '\u09B9';
			this.InArray["i"] =	 '\u0997';
			this.InArray["o"] =	 '\u09A6';
			this.InArray["p"] =	 '\u099C';
			this.InArray["["] =	 '\u09A1';
			this.InArray["]"] =	 '\u09BC';
			this.InArray["a"] =	 '\u09CB';
			this.InArray["s"] =	 '\u09C7';
			this.InArray["d"] =	 '\u09CD';
			this.InArray["f"] =	 '\u09BF';
			this.InArray["g"] =	 '\u09C1';
			this.InArray["h"] =	 '\u09AA';
			this.InArray["j"] =	 '\u09B0';
			this.InArray["k"] =	 '\u0995';
			this.InArray["l"] =	 '\u09A4';
			this.InArray[";"] =	 '\u099A';
			this.InArray["\'"] =	 '\u099F';
			this.InArray["z"] =	 '';
			this.InArray["x"] =	 '\u0982';
			this.InArray["c"] =	 '\u09AE';
			this.InArray["v"] =	 '\u09A8';
			this.InArray["b"] =   '\u09AC';
			this.InArray["n"] =	 '\u09B2';
			this.InArray["m"] =	 '\u09B8';
			this.InArray[","] =	 ',';
			this.InArray["."] =	 '.';
			this.InArray["/"] =	 '\u09AF';
			
			//this.InArray with shift
			this.InArray["~"] =	 '' ; 
			this.InArray["!"] =	 '';
			this.InArray["@"] =	 '';
			this.InArray["#"] =	 '\u09CD\u09B0';
			this.InArray["$"] =	 '\u09B0\u09CD';
			this.InArray["%"] =	 '\u099C\u09CD\u099E';
			this.InArray["^"] =	 '\u09A4\u09CD\u09B0';
			this.InArray["&"] =	 '\u0995\u09CD\u09B7';
			this.InArray["*"] =	 '\u09B6\u09CD\u09B0';
			this.InArray["("] =	 '(';
			this.InArray[")"] =	 ')';
			this.InArray["_"] =	 '\u0983';
			this.InArray["+"] =	 '\u098B';
			this.InArray["|"] =	 '';
			this.InArray["Q"] =	 '\u0994';
			this.InArray["W"] =	 '\u0990';
			this.InArray["E"] =	 '\u0986';
			this.InArray["R"] =	 '\u0988';
			this.InArray["T"] =	 '\u098A';
			this.InArray["Y"] =	 '\u09AD';
			this.InArray["U"] =	 '\u0999';
			this.InArray["I"] =	 '\u0998';
			this.InArray["O"] =	 '\u09A7';
			this.InArray["P"] =	 '\u099D';
			this.InArray["{"] =	 '\u09A2';
			this.InArray["}"] =	 '\u099E';
			this.InArray["A"] =	 '\u0993';
			this.InArray["S"] =	 '\u098F';
			this.InArray["D"] =	 '\u0985';
			this.InArray["F"] =	 '\u0987';
			this.InArray["G"] =	 '\u0989';
			this.InArray["H"] =	 '\u09AB';
			this.InArray["J"] =	 '';
			this.InArray["K"] =	 '\u0996';
			this.InArray["L"] =	 '\u09A5';
			this.InArray[":"] =	 '\u099B';
			this.InArray["\""] =	 '\u09A0';
			this.InArray["Z"] =	 '';
			this.InArray["X"] =	 '\u0981';
			this.InArray["C"] =	 '\u09A3';
			this.InArray["V"] =	 '';
			this.InArray["B"] =	 '' ;
			this.InArray["N"] =	 '';
			this.InArray["M"] =	 '\u09B6';
			this.InArray["<"] =	 '\u09B7';
			this.InArray[">"] =	 '';
			this.InArray["?"] =	 '\u09DF';
			this.InArray[" "] =	 ' ';

	}
}

function Initialize_TG(kbdid)
{
	if(kbdid == PHONETIC)//03/04/07
	{
		this.vowelLength = 16;
		this.consonantLength =   37;
		this.conjunctLength = 8;
		this.nuktaLength =       8;
		this.langConjuncts = {};

		this.stringInvite="\u0c06\u0c39\u0c4d\u0c35\u0c3e\u0c28\u0c3f\u0c02\u0c1a\u0c02\u0c21\u0c3f";
		this.stringWebSeacrh="\u0c35\u0c46\u0c2c\u0c4d\u200c\u0c32\u0c4b \u0c36\u0c4b\u0c27\u0c28";	

		//Telugu- Unicode Keyboard array
		this.uniKeyboardchars =  [  ["a", "ai", "ka", "cha", "Ta", "ta", "pa", "ya", "sha"],
								["aa", "o", "kha", "chha", "Tha", "tha", "pha", "ra", "Sha"],
								["i", "O", "ga", "ja", "Da", "da", "ba", "Ra", "sa"],
								["ee", "au", "gha", "jha", "Dha", "dha", "bha", "la", "ha"],
								["u", "RRu", "Nga", "Nja", "Na", "na", "ma", "La", "kSha"],
								["oo", "aM", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "va", "&nbsp;"],
								["e", "am", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;"],
								["E", "aH", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;"],
								];



		//Telugu- Unicode Keyboard array dislpay in dynamic help

		this.uniKeywordHelpChar =  [  ["a", "ai", "k", "ch", "T", "t", "p", "y", "sh"],
								["aa", "o", "kh", "chh", "Th", "th", "ph", "r", "Sh"],
								["i", "O", "g", "j", "D", "d", "b", "R", "s"],
								["ee", "au", "gh", "jh", "Dh", "dh", "bh", "l", "h"],
								["u", "RRu", "Ng", "Nj", "N", "n", "m", "L", "kSh"],
								["oo", "aM", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "v", "&nbsp;"],
								["e", "am", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;"],
								["E", "aH", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;"],
								];



		//Telugu- Characters which can not be converted to LowerCase.
		this.charOnlyUppercase = ["E","D","H","K","L", "M","N", "O", "R", "S", "T", "X","I","U"];	  

	     //Telugu- Vowel Modifiers.
		this.VowelModifiers = ["M","m","H"];

		//Telugu- English Vowels and Matra to be used for English to Unicode conversion

		this.engToUniVowel[0] = "a";
		this.engToUniVowel[1] = "aa";
		this.engToUniVowel[2] = "i";
		this.engToUniVowel[3] = "ee";
		this.engToUniVowel[4] = "u";
		this.engToUniVowel[5] = "oo";
		this.engToUniVowel[6] = "RR";
		this.engToUniVowel[7] = "";
		this.engToUniVowel[8] = "";
		this.engToUniVowel[9] = "e";
		this.engToUniVowel[10] = "E";
		this.engToUniVowel[11] = "ai";
		this.engToUniVowel[12] = "";
		this.engToUniVowel[13] = "o";
		this.engToUniVowel[14] = "O";
		this.engToUniVowel[15] = "au";



		//Telugu- English Consonant

		this.engConsonant[0] = "k";
		this.engConsonant[1] = "kh";
		this.engConsonant[2] = "g";
		this.engConsonant[3] = "gh";
		this.engConsonant[4] = "Ng";
		this.engConsonant[5] = "ch";
		this.engConsonant[6] = "chh";
		this.engConsonant[7] = "j";
		this.engConsonant[8] = "jh";
		this.engConsonant[9] = "Nj";
		this.engConsonant[10] = "T";
		this.engConsonant[11] = "Th";
		this.engConsonant[12] = "D";
		this.engConsonant[13] = "Dh";
		this.engConsonant[14] = "N";
		this.engConsonant[15] = "t";
		this.engConsonant[16] = "th";
		this.engConsonant[17] = "d";
		this.engConsonant[18] = "dh";
		this.engConsonant[19] = "n";
		this.engConsonant[20] = "";//space bcoz at this location no word is for hindi language 
		this.engConsonant[21] = "p";
		this.engConsonant[22] = "ph";//ph and f are same 
		this.engConsonant[23] = "b";
		this.engConsonant[24] = "bh";
	    this.engConsonant[25] = "m";
		this.engConsonant[26] = "y";
		this.engConsonant[27] = "r";
		this.engConsonant[28] = "R";
		this.engConsonant[29] = "l";
		this.engConsonant[30] = "L";
		this.engConsonant[31] = "";
		this.engConsonant[32] = "v";
		this.engConsonant[33] = "sh";
		this.engConsonant[34] = "Sh";
		this.engConsonant[35] = "s";
		this.engConsonant[36] = "h";

	    //Telugu- English Conjuncts array
	     this.langConjuncts["kSh"]= '\u0C15\u0C4D\u0C37';
	     this.langConjuncts["c"]	= '\u0C15';	
	     this.langConjuncts["f"]	= '\u0C2B';	
	     this.langConjuncts["q"]	= '\u0C15';	
	     this.langConjuncts["w"]	= '\u0C35';	
	     this.langConjuncts["x"]	= '\u0C15\u0C4D\u0C38';	
	     this.langConjuncts["z"]	= '\u0C1C';	
	     this.langConjuncts["X"]= '\u0C15\u0C4D\u0C37';	
	     this.langConjuncts["mm"]= '\u0C2E\u0C4D\u0C2E';	
	     this.langConjuncts["mn"]= '\u0C2E\u0C4D\u0C28';	
	     this.langConjuncts["my"]= '\u0C2E\u0C4D\u0C2F';	
	     this.langConjuncts["ml"]= '\u0C2E\u0C4D\u0C32';	
	     this.langConjuncts["mh"]= '\u0C2E\u0C4D\u0C39';	
	     this.langConjuncts["mr"]= '\u0C2E\u0C4D\u0C30';	
	     this.langConjuncts["nn"]= '\u0C28\u0C4D\u0C28';	
	     this.langConjuncts["nm"]= '\u0C28\u0C4D\u0C2E';	
	     this.langConjuncts["ny"]= '\u0C28\u0C4D\u0C2f';	
	     this.langConjuncts["nl"]= '\u0C28\u0C4D\u0C32';	
	     this.langConjuncts["nh"]= '\u0C28\u0C4D\u0C39';	
	     this.langConjuncts["nr"]= '\u0C28\u0C4D\u0C30';	



		//Telugu- Correct User Spell array for specific words
		this.userSpell["a"]="a";


		//Telugu- Special word replaces.
		this.engReplace[0] = "ii";
		this.engReplace[1] = "I";
		this.engReplace[2] = "uu";
		this.engReplace[3] = "U";
		this.engReplace[4] = "ei";
		this.engReplace[5] = "ou";

		this.engReplaceBy[0] = "ee";
		this.engReplaceBy[1] = "ee";
		this.engReplaceBy[2] = "oo";
		this.engReplaceBy[3] = "oo";
		this.engReplaceBy[4] = "ai";
		this.engReplaceBy[5] = "au";
	}
	else if(kbdid == INSCRIPT)
	{
		this.InArray["`"] =	'\u0C4A';      
		this.InArray["1"] =	'1';      
		this.InArray["2"] =	'2';      
		this.InArray["3"] =	'3';      
		this.InArray["4"] =	'4';      
		this.InArray["5"] =	'5';      
		this.InArray["6"] =	'6';      
		this.InArray["7"] =	'7';      
		this.InArray["8"] =	 '8';      
		this.InArray["9"] =	 '9';      
		this.InArray["0"] =	 '0';      
		this.InArray["-"] =	 '-';      
		this.InArray["="] =	 '\u0C43';      
		this.InArray["\\"] =	 '';      
		this.InArray["q"] =	 '\u0C4C';      
		this.InArray["w"] =	 '\u0C48';      
		this.InArray["e"] =	 '\u0C3E';      
		this.InArray["r"] =	 '\u0C40';      
		this.InArray["t"] =	 '\u0C42';      
		this.InArray["y"] =	 '\u0C2C';      
		this.InArray["u"] =	 '\u0C39';      
		this.InArray["i"] =	 '\u0C17';      
		this.InArray["o"] =	 '\u0C26';      
		this.InArray["p"] =	 '\u0C1C';      
		this.InArray["["] =	 '\u0C21';      
		this.InArray["]"] =	 '';      
		this.InArray["a"] =	 '\u0C4B';      
		this.InArray["s"] =	 '\u0C47';      
		this.InArray["d"] =	 '\u0C4D';      
		this.InArray["f"] =	 '\u0C3F';      
		this.InArray["g"] =	 '\u0C41';      
		this.InArray["h"] =	 '\u0C2A';      
		this.InArray["j"] =	 '\u0C30';      
		this.InArray["k"] =	 '\u0C15';      
		this.InArray["l"] =	 '\u0C24';      
		this.InArray[";"] =	 '\u0C1A';      
		this.InArray["\'"] =	 '\u0C1F';      
		this.InArray["z"] =	 '\u0C46';      
		this.InArray["x"] =	 '\u0C02';      
		this.InArray["c"] =	 '\u0C2E';      
		this.InArray["v"] =	 '\u0C28';      
		this.InArray["b"] =   '\u0C35';      
		this.InArray["n"] =	 '\u0C32';      
		this.InArray["m"] =	 '\u0C38';      
		this.InArray[","] =	 ',';      
		this.InArray["."] =	 '.';      
		this.InArray["/"] =	 '\u0C2F';      
		
		//this.InArray with shift
		this.InArray["~"] =	 '\u0C12'; 
		this.InArray["!"] =	 '';      
		this.InArray["@"] =	 '';      
		this.InArray["#"] =	 '\u0C4D\u0C30';      
		this.InArray["$"] =	 '';      
		this.InArray["%"] =	 '\u0C1C\u0C4D\u0C1E';      
		this.InArray["^"] =	 '\u0C24\u0C4D\u0C30';      
		this.InArray["&"] =	 '\u0C15\u0C4D\u0C37';      
		this.InArray["*"] =	 '\u0C36\u0C4D\u0C30';      
		this.InArray["("] =	 '(';      
		this.InArray[")"] =	 ')';      
		this.InArray["_"] =	 '\u0C03';      
		this.InArray["+"] =	 '\u0C0B';      
		this.InArray["|"] =	 '';      
		this.InArray["Q"] =	 '\u0C14';      
		this.InArray["W"] =	 '\u0C10';      
		this.InArray["E"] =	 '\u0C06';      
		this.InArray["R"] =	 '\u0C08';      
		this.InArray["T"] =	 '\u0C0A';      
		this.InArray["Y"] =	 '\u0C2D';      
		this.InArray["U"] =	 '\u0C19';      
		this.InArray["I"] =	 '\u0C18';      
		this.InArray["O"] =	 '\u0C27';      
		this.InArray["P"] =	 '\u0C1D';      
		this.InArray["{"] =	 '\u0C22';      
		this.InArray["}"] =	 '\u0C1E';      
		this.InArray["A"] =	 '\u0C13';      
		this.InArray["S"] =	 '\u0C0F';      
		this.InArray["D"] =	 '\u0C05';      
		this.InArray["F"] =	 '\u0C07';      
		this.InArray["G"] =	 '\u0C09';      
		this.InArray["H"] =	 '\u0C2B';      
		this.InArray["J"] =	 '\u0C31';      
		this.InArray["K"] =	 '\u0C16';      
		this.InArray["L"] =	 '\u0C25';      
		this.InArray[":"] =	 '\u0C1B';      
		this.InArray["'"] =	 '\u0C20';      
		this.InArray["Z"] =	 '\u0C0E';      
		this.InArray["X"] =	 '\u0C01';      
		this.InArray["C"] =	 '\u0C23';      
		this.InArray["V"] =	 '';      
		this.InArray["B"] =	 '';      
		this.InArray["N"] =	 '\u0C33';      
		this.InArray["M"] =	 '\u0C36';      
		this.InArray["<"] =	 '\u0C37';      
		this.InArray[">"] =	 '|';      
		this.InArray["?"] =	 '';      
		this.InArray[" "] =	 '';      								
	}
}


function Initialize_KN(kbdid)
{
	if(kbdid == PHONETIC)//03/04/07
	{
		this.vowelLength = 16;
		this.consonantLength =   37;
		this.conjunctLength = 19;
		this.nuktaLength =       8;
		this.langConjuncts = {};

		this.stringInvite="\u0c86\u0cb9\u0ccd\u0cb5\u0cbe\u0ca8\u0cbf\u0cb8\u0cbf";
		this.stringWebSeacrh="\u0cb5\u0cc6\u0cac\u0ccd \u0cb6\u0ccb\u0ca7";	


		//Kannada- Unicode Keyboard array
		this.uniKeyboardchars =  [  ["a", "ai", "ka", "ca", "Ta", "ta", "pa", "ya", "Sa"],
								["aa", "o", "Ka", "Ca", "Tha", "tha", "Pa", "ra", "Sha"],
								["i", "O", "ga", "ja", "Da", "da", "ba", "rxa", "sa"],
								["ee", "au", "Ga", "Ja", "Dha", "dha", "Ba", "la", "ha"],
								["u", "Ru", "~ga", "~ja", "Na", "na", "ma", "La", "kSha"],
								["oo", "aM", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "Lxa", "&nbsp;"],
								["e", "aH", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "va", "&nbsp;"],
								["E", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;"],
								];



		//Kannada- Unicode Keyboard array dislpay in dynamic help

		this.uniKeywordHelpChar =  [  ["a", "ai", "k", "c", "T", "t", "p", "y", "S"],
								["aa", "o", "K", "C", "Th", "th", "P", "r", "Sh"],
								["i", "O", "g", "j", "D", "d", "b", "rx", "s"],
								["ee", "au", "G", "J", "Dh", "dh", "B", "l", "h"],
								["u", "Ru", "~g", "~j", "N", "n", "m", "L", "kSh"],
								["oo", "aM", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "Lx", "&nbsp;"],
								["e", "aH", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "v", "&nbsp;"],
								["E", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;", "&nbsp;"],
								];



		//Kannada- Characters which can not be converted to LowerCase.
		this.charOnlyUppercase = ["A","I","U","R","E","O","K","G","C","J","T","D","N","S","P","B","Y","L","X","M","H"];	  

	     //Kananda- Vowel Modifiers.
		this.VowelModifiers = ["M","H"];


		//Kannada- English Vowels and Matra to be used for English to Unicode conversion

		this.engToUniVowel[0] = "a";
		this.engToUniVowel[1] = "aa";
		this.engToUniVowel[2] = "i";
		this.engToUniVowel[3] = "ee";
		this.engToUniVowel[4] = "u";
		this.engToUniVowel[5] = "oo";
		this.engToUniVowel[6] = "Ru";
		this.engToUniVowel[7] = "";
		this.engToUniVowel[8] = "";
		this.engToUniVowel[9] = "e";
		this.engToUniVowel[10] = "E";
		this.engToUniVowel[11] = "ai";
		this.engToUniVowel[12] = "";
		this.engToUniVowel[13] = "o";
		this.engToUniVowel[14] = "O";
		this.engToUniVowel[15] = "au";



		//Kannada- English Consonant

		this.engConsonant[0] = "k";
		this.engConsonant[1] = "K";
		this.engConsonant[2] = "g";
		this.engConsonant[3] = "G";
		this.engConsonant[4] = "~g";
		this.engConsonant[5] = "c";
		this.engConsonant[6] = "C";
		this.engConsonant[7] = "j";
		this.engConsonant[8] = "J";
		this.engConsonant[9] = "~j";
		this.engConsonant[10] = "T";
		this.engConsonant[11] = "Th";
		this.engConsonant[12] = "D";
		this.engConsonant[13] = "Dh";
		this.engConsonant[14] = "N";
		this.engConsonant[15] = "t";
		this.engConsonant[16] = "th";
		this.engConsonant[17] = "d";
		this.engConsonant[18] = "dh";
		this.engConsonant[19] = "n";
		this.engConsonant[20] = "";//space bcoz at this location no word is for hindi language 
		this.engConsonant[21] = "p";
		this.engConsonant[22] = "P";//ph and f are same 
		this.engConsonant[23] = "b";
		this.engConsonant[24] = "B";
	    this.engConsonant[25] = "m";
		this.engConsonant[26] = "y";
		this.engConsonant[27] = "r";
		this.engConsonant[28] = "rx";
		this.engConsonant[29] = "l";
		this.engConsonant[30] = "L";
		this.engConsonant[31] = "";
		this.engConsonant[32] = "v";
		this.engConsonant[33] = "S";
		this.engConsonant[34] = "Sh";
		this.engConsonant[35] = "s";
		this.engConsonant[36] = "h";

	    //Kannada- English Conjuncts array
	     this.langConjuncts["kSh"]= '\u0C95\u0CCD\u0CB7';
	     this.langConjuncts["f"]	= '\u0CAB';	
	     this.langConjuncts["q"]	= '\u0C95';	
	     this.langConjuncts["w"]	= '\u0CB5';	
	     this.langConjuncts["x"]	= '\u0C95\u0CCD\u0CB8';	
	     this.langConjuncts["z"]	= '\u0C9C';	
	     this.langConjuncts["X"]= '\u0C95\u0CCD\u0CB7';
	     this.langConjuncts["Lx"]= '\u0CDE';
	     this.langConjuncts["kh"]= '\u0C96';
	     this.langConjuncts["gh"]= '\u0C98';
	     this.langConjuncts["ch"]= '\u0C9A';
	     this.langConjuncts["Ch"]= '\u0C9B';
	     this.langConjuncts["jh"]= '\u0C9D';
	     this.langConjuncts["ph"]= '\u0CAB';
	     this.langConjuncts["bh"]= '\u0CAD';
	     this.langConjuncts["Y"]=  '\u0CAF';
	     this.langConjuncts["R"]=  '\u0CB0';
	     this.langConjuncts["sh"]= '\u0CB6';
	     this.langConjuncts["~h"]= '\u0CB9';





		//Kannada- Correct User Spell array for specific words
		this.userSpell["a"]="a";


		//Kannada- Special word replaces.
		this.engReplace[0] = "A";
		this.engReplace[1] = "I";
		this.engReplace[2] = "U";
		this.engReplace[3] = "ou";
		this.engReplace[4] = "Roo";



		this.engReplaceBy[0] = "aa";
		this.engReplaceBy[1] = "ee";
		this.engReplaceBy[2] = "oo";
		this.engReplaceBy[3] = "au";
		this.engReplaceBy[4] = "RU";
	}
	else if(kbdid == INSCRIPT)
	{
		//03/04/07	
		this.InArray["`"] =	'\u0CCA';      
		this.InArray["1"] =	'1';      
		this.InArray["2"] =	'2';      
		this.InArray["3"] =	'3';      
		this.InArray["4"] =	'4';      
		this.InArray["5"] =	'5';      
		this.InArray["6"] =	'6';      
		this.InArray["7"] =	'7';      
		this.InArray["8"] =	 '8';      
		this.InArray["9"] =	 '9';      
		this.InArray["0"] =	 '0';      
		this.InArray["-"] =	 '-';      
		this.InArray["="] =	 '\u0CC3';      
		this.InArray["\\"] =	 '\u0CC9';      
		this.InArray["q"] =	 '\u0CCC';      
		this.InArray["w"] =	 '\u0CC8';      
		this.InArray["e"] =	 '\u0CBE';      
		this.InArray["r"] =	 '\u0CC0';      
		this.InArray["t"] =	 '\u0CC2';      
		this.InArray["y"] =	 '\u0CAC';      
		this.InArray["u"] =	 '\u0CB9';      
		this.InArray["i"] =	 '\u0C97';      
		this.InArray["o"] =	 '\u0CA6';      
		this.InArray["p"] =	 '\u0C9C';      
		this.InArray["["] =	 '\u0CA1';      
		this.InArray["]"] =	 '';      
		this.InArray["a"] =	 '\u0CCB';      
		this.InArray["s"] =	 '\u0CC7';      
		this.InArray["d"] =	 '\u0CCD';      
		this.InArray["f"] =	 '\u0CBF';      
		this.InArray["g"] =	 '\u0CC1';      
		this.InArray["h"] =	 '\u0CAA';      
		this.InArray["j"] =	 '\u0CB0';      
		this.InArray["k"] =	 '\u0C95';      
		this.InArray["l"] =	 '\u0CA4';      
		this.InArray[";"] =	 '\u0C9A';      
		this.InArray["\'"] =	 '\u0C9F';      
		this.InArray["z"] =	 '\u0CC6';      
		this.InArray["x"] =	 '\u0C82';      
		this.InArray["c"] =	 '\u0CAE';      
		this.InArray["v"] =	 '\u0CA8';      
		this.InArray["b"] =   '\u0CB5';      
		this.InArray["n"] =	 '\u0CB2';      
		this.InArray["m"] =	 '\u0CB8';      
		this.InArray[","] =	 ',';      
		this.InArray["."] =	 '.';      
		this.InArray["/"] =	 '\u0CAF';      
		
		//this.InArray with shift
		this.InArray["~"] =	 '\u0C92'; 
		this.InArray["!"] =	 '';      
		this.InArray["@"] =	 '';      
		this.InArray["#"] =	 '\u0CCD\u0CB0';      
		this.InArray["$"] =	 '\u0CB0\u0CCD';      
		this.InArray["%"] =	 '\u0C9C\u0CCD\u0C9E';      
		this.InArray["^"] =	 '\u0CA4\u0CCD\u0CB0';      
		this.InArray["&"] =	 '\u0C95\u0CCD\u0CB7';      
		this.InArray["*"] =	 '\u0CB6\u0CCD\u0CB0';      
		this.InArray["("] =	 '(';      
		this.InArray[")"] =	 ')';      
		this.InArray["_"] =	 '\u0C83';      
		this.InArray["+"] =	 '\u0C8B';      
		this.InArray["|"] =	 '';      
		this.InArray["Q"] =	 '\u0C94';      
		this.InArray["W"] =	 '\u0C90';      
		this.InArray["E"] =	 '\u0C86';      
		this.InArray["R"] =	 '\u0C88';      
		this.InArray["T"] =	 '\u0C8A';      
		this.InArray["Y"] =	 '\u0CAD';      
		this.InArray["U"] =	 '\u0C99';      
		this.InArray["I"] =	 '\u0C98';      
		this.InArray["O"] =	 '\u0CA7';      
		this.InArray["P"] =	 '\u0C9D';      
		this.InArray["{"] =	 '\u0CA2';      
		this.InArray["}"] =	 '\u0C9E';      
		this.InArray["A"] =	 '\u0C93';      
		this.InArray["S"] =	 '\u0C8F';      
		this.InArray["D"] =	 '\u0C85';      
		this.InArray["F"] =	 '\u0C87';      
		this.InArray["G"] =	 '\u0C89';      
		this.InArray["H"] =	 '\u0CAB';      
		this.InArray["J"] =	 '\u0CB1';      
		this.InArray["K"] =	 '\u0C96';      
		this.InArray["L"] =	 '\u0CA5';      
		this.InArray[":"] =	 '\u0C9B';      
		this.InArray["'"] =	 '\u0CA0';      
		this.InArray["Z"] =	 '\u0C8E';      
		this.InArray["X"] =	 '';      
		this.InArray["C"] =	 '\u0CA3';      
		this.InArray["V"] =	 '';      
		this.InArray["B"] =	 '';      
		this.InArray["N"] =	 '\u0CB3';      
		this.InArray["M"] =	 '\u0CB6';      
		this.InArray["<"] =	 '';      
		this.InArray[">"] =	 '';      
		this.InArray["?"] =	 '?';      
		this.InArray[" "] =	 '';      								
	}
	
}

function Initialize_ML(kbdid)
{
	if(kbdid == PHONETIC)//03/04/07
	{
		this.vowelLength = 16;
		this.consonantLength =   37;
		this.conjunctLength = 8;
		this.nuktaLength =       8;
		this.langConjuncts = {};

		this.stringInvite="\u0d15\u0d4d\u0d37\u0d23\u0d3f\u0d15\u0d4d\u0d15\u0d41\u0d15";
		this.stringWebSeacrh="\u0d35\u0d46\u0d2c\u0d4d \u0d24\u0d3f\u0d30\u0d1a\u0d4d\u0d1a\u0d3f\u0d32\u0d4d\u0200d";	

		//Malayalam- Unicode Keyboard array
		this.uniKeyboardchars =  [  ["a",	"ai",	"ka",	"cha",	"Ta",	"tha",	"pa",	"ya",	"Sa"],
								["aa",	"o",	"kha",	"chha",	"Tha",	"ttha",	"pha",	"ra",	"Sha"],
								["i",	"O",	"ga",	"ja",	"Da",	"da",	"ba",	"Ra",	"sa"],
								["ee",	"au",	"gha",	"jha",	"Dha",	"dha",	"bha",	"la",	"ha"],
								["u",	"r^a",	"nga",	"nja",	"Na",	"na",	"ma",	"La",	"kSha"],
								["oo",	"am",	"&nbsp;",	"&nbsp;",	"&nbsp;",	"&nbsp;",	"&nbsp;",	"va",	"&nbsp;"],
								["e",	"aH",	"&nbsp;",	"&nbsp;",	"&nbsp;",	"&nbsp;",	"&nbsp;",	"zha",	"&nbsp;"],
								["E",	"&nbsp;",	"&nbsp;",	"&nbsp;",	"&nbsp;",	"&nbsp;",	"&nbsp;",	"&nbsp;",	"&nbsp;"],
								];




		//Malayalam- Unicode Keyboard array dislpay in dynamic help

		this.uniKeywordHelpChar =  [["a",	"ai",	"k",	"ch",	"T",	"th",	"p",	"y",	"sh"],
								["aa",	"o",	"kh",	"chh",	"Th",	"tth",	"ph",	"r",	"Sh"],
								["i",	"O",	"g",	"j",	"D",	"d",	"b",	"R",	"s"],
								["ee",	"au",	"gh",	"jh",	"Dh",	"dh",	"bh",	"l",	"h"],
								["u",	"r^",	"ng",	"nj",	"N",	"n",	"m",	"L",	"kSh"],
								["oo",	"am",	"&nbsp;",	"&nbsp;",	"&nbsp;",	"&nbsp;",	"&nbsp;",	"v",	"&nbsp;"],
								["e",	"aH",	"&nbsp;",	"&nbsp;",	"&nbsp;",	"&nbsp;",	"&nbsp;",	"zh",	"&nbsp;"],
								["E",	"&nbsp;",	"&nbsp;",	"&nbsp;",	"&nbsp;",	"&nbsp;",	"&nbsp;",	"&nbsp;",	"&nbsp;"],
								];




		//Malayalam- Characters which can not be converted to LowerCase.
		this.charOnlyUppercase = ["E","D","H","L","N","O","R","S","T","X","I","U"];	  

	     //Malayalama- Vowel Modifiers.
		this.VowelModifiers = ["m","H"];

		//Malayalam- English Vowels and Matra to be used for English to Unicode conversion

		this.engToUniVowel[0] = "a";
		this.engToUniVowel[1] = "aa";
		this.engToUniVowel[2] = "i";
		this.engToUniVowel[3] = "ee";
		this.engToUniVowel[4] = "u";
		this.engToUniVowel[5] = "oo";
		this.engToUniVowel[6] = "r^";
		this.engToUniVowel[7] = "";
		this.engToUniVowel[8] = "";
		this.engToUniVowel[9] = "e";
		this.engToUniVowel[10] = "E";
		this.engToUniVowel[11] = "ai";
		this.engToUniVowel[12] = "";
		this.engToUniVowel[13] = "o";
		this.engToUniVowel[14] = "O";
		this.engToUniVowel[15] = "au";



		//Malayalam- English Consonant

		this.engConsonant[0] = "k";
		this.engConsonant[1] = "kh";
		this.engConsonant[2] = "g";
		this.engConsonant[3] = "gh";
		this.engConsonant[4] = "ng";
		this.engConsonant[5] = "ch";
		this.engConsonant[6] = "chh";
		this.engConsonant[7] = "j";
		this.engConsonant[8] = "jh";
		this.engConsonant[9] = "nj";
		this.engConsonant[10] = "T";
		this.engConsonant[11] = "Th";
		this.engConsonant[12] = "D";
		this.engConsonant[13] = "Dh";
		this.engConsonant[14] = "N";
		this.engConsonant[15] = "th";
		this.engConsonant[16] = "tth";
		this.engConsonant[17] = "d";
		this.engConsonant[18] = "dh";
		this.engConsonant[19] = "n";
		this.engConsonant[20] = "";//space bcoz at this location no word is for hindi language 
		this.engConsonant[21] = "p";
		this.engConsonant[22] = "ph";//ph and f are same 
		this.engConsonant[23] = "b";
		this.engConsonant[24] = "bh";
		this.engConsonant[25] = "m";
		this.engConsonant[26] = "y";
		this.engConsonant[27] = "r";
		this.engConsonant[28] = "R";
		this.engConsonant[29] = "l";
		this.engConsonant[30] = "L";
		this.engConsonant[31] = "zh";
		this.engConsonant[32] = "v";
		this.engConsonant[33] = "S";
		this.engConsonant[34] = "Sh";
		this.engConsonant[35] = "s";
		this.engConsonant[36] = "h";

	    //Malayalam- English Conjuncts array
	     this.langConjuncts["kSh"]= '\u0D15\u0D4D\u0D37';
	     this.langConjuncts["c"]	= '\u0D15';	
	     this.langConjuncts["f"]	= '\u0D2B';	
	     this.langConjuncts["q"]	= '\u0D15';	
	     this.langConjuncts["w"]	= '\u0D35';	
	     this.langConjuncts["x"]	= '\u0D15\u0D4D\u0D38';	
	     this.langConjuncts["z"]	= '\u0D1C';	
	     this.langConjuncts["X"]= '\u0D15\u0D4D\u0D37';
	     this.langConjuncts["Nh"]= '\u0D23\u0D4D\u200D';	
	     this.langConjuncts["nh"]= '\u0D28\u0D4D\u200D';	
	     this.langConjuncts["rh"]= '\u0D30\u0D4D\u200D';	
	     this.langConjuncts["lh"]= '\u0D32\u0D4D\u200D';	
	     this.langConjuncts["Lh"]= '\u0D33\u0D4D\u200D';	
	     this.langConjuncts["t"]= '\u0D31\u0D4D\u0D31';	



		//Malayalam- Correct User Spell array for specific words
		this.userSpell["a"]="a";


		//Malayalam- Special word replaces.
		this.engReplace[0] = "ii";
		this.engReplace[1] = "I";
		this.engReplace[2] = "uu";
		this.engReplace[3] = "U";
		this.engReplace[4] = "ei";
		this.engReplace[5] = "ou";

		this.engReplaceBy[0] = "ee";
		this.engReplaceBy[1] = "ee";
		this.engReplaceBy[2] = "oo";
		this.engReplaceBy[3] = "oo";
		this.engReplaceBy[4] = "ai";
		this.engReplaceBy[5] = "au";
	}
	else if(kbdid == INSCRIPT)
	{
	//03/04/07	
			this.InArray["`"] =	'\u0D4A';      
			this.InArray["1"] =	'1';      
			this.InArray["2"] =	'2';      
			this.InArray["3"] =	'3';      
			this.InArray["4"] =	'4';      
			this.InArray["5"] =	'5';      
			this.InArray["6"] =	'6';      
			this.InArray["7"] =	'7';      
			this.InArray["8"] =	 '8';      
			this.InArray["9"] =	 '9';      
			this.InArray["0"] =	 '0';      
			this.InArray["-"] =	 '-';      
			this.InArray["="] =	 '\u0D43';      
			this.InArray["\\"] =	 '';      
			this.InArray["q"] =	 '\u0D57';      
			this.InArray["w"] =	 '\u0D48';      
			this.InArray["e"] =	 '\u0D3E';      
			this.InArray["r"] =	 '\u0D40';      
			this.InArray["t"] =	 '\u0D42';      
			this.InArray["y"] =	 '\u0D2C';      
			this.InArray["u"] =	 '\u0D39';      
			this.InArray["i"] =	 '\u0D17';      
			this.InArray["o"] =	 '\u0D26';      
			this.InArray["p"] =	 '\u0D1C';      
			this.InArray["["] =	 '\u0D21';      
			this.InArray["]"] =	 '\u200D';      
			this.InArray["a"] =	 '\u0D4B';      
			this.InArray["s"] =	 '\u0D47';      
			this.InArray["d"] =	 '\u0D4D';      
			this.InArray["f"] =	 '\u0D3F';      
			this.InArray["g"] =	 '\u0D41';      
			this.InArray["h"] =	 '\u0D2A';      
			this.InArray["j"] =	 '\u0D30';      
			this.InArray["k"] =	 '\u0D15';      
			this.InArray["l"] =	 '\u0D24';      
			this.InArray[";"] =	 '\u0D1A';      
			this.InArray["\'"] =	 '\u0D1F';      
			this.InArray["z"] =	 '\u0D46';      
			this.InArray["x"] =	 '\u0D02';      
			this.InArray["c"] =	 '\u0D2E';      
			this.InArray["v"] =	 '\u0D28';      
			this.InArray["b"] =   '\u0D35';      
			this.InArray["n"] =	 '\u0D32';      
			this.InArray["m"] =	 '\u0D38';      
			this.InArray[","] =	 ',';      
			this.InArray["."] =	 '.';      
			this.InArray["/"] =	 '\u0D2F';      
			
			//this.InArray with shift
			this.InArray["~"] =	 '\u0D12'; 
			this.InArray["!"] =	 '!';      
			this.InArray["@"] =	 '?';      
			this.InArray["#"] =	 '\u0D4D\u0D30';      
			this.InArray["$"] =	 ':';      
			this.InArray["%"] =	 ';';      
			this.InArray["^"] =	 '?';      
			this.InArray["&"] =	 '\u0D15\u0D4D\u0D37';      
			this.InArray["*"] =	 '*';      
			this.InArray["("] =	 '(';      
			this.InArray[")"] =	 ')';      
			this.InArray["_"] =	 '\u0D03';      
			this.InArray["+"] =	 '\u0D0B';      
			this.InArray["|"] =	 '';      
			this.InArray["Q"] =	 '\u0D14';      
			this.InArray["W"] =	 '\u0D10';      
			this.InArray["E"] =	 '\u0D06';      
			this.InArray["R"] =	 '\u0D08';      
			this.InArray["T"] =	 '\u0D0A';      
			this.InArray["Y"] =	 '\u0D2D';      
			this.InArray["U"] =	 '\u0D19';      
			this.InArray["I"] =	 '\u0D18';      
			this.InArray["O"] =	 '\u0D27';      
			this.InArray["P"] =	 '\u0D1D';      
			this.InArray["{"] =	 '\u0D22';      
			this.InArray["}"] =	 '\u0D1E';      
			this.InArray["A"] =	 '\u0D13';      
			this.InArray["S"] =	 '\u0D0F';      
			this.InArray["D"] =	 '\u0D05';      
			this.InArray["F"] =	 '\u0D07';      
			this.InArray["G"] =	 '\u0D09';      
			this.InArray["H"] =	 '\u0D2B';      
			this.InArray["J"] =	 '\u0D31';      
			this.InArray["K"] =	 '\u0D16';      
			this.InArray["L"] =	 '\u0D25';      
			this.InArray[":"] =	 '\u0D1B';      
			this.InArray["'"] =	 '\u0D20';      
			this.InArray["Z"] =	 '\u0D0E';      
			this.InArray["X"] =	 '';      
			this.InArray["C"] =	 '\u0D23';      
			this.InArray["V"] =	 '\u0D03';      
			this.InArray["B"] =	 '\u0D33';      
			this.InArray["N"] =	 '\u0D34';      
			this.InArray["M"] =	 '\u0D36';      
			this.InArray["<"] =	 '\u0D37';      
			this.InArray[">"] =	 '?';      
			this.InArray["?"] =	 '?';      
			this.InArray[" "] =	 '';      								
	}
		
}


