var XlationTbl = new Array()

XlationTbl["a"] = "A";
XlationTbl["A"] = "B";
XlationTbl["u"] = "E"
XlationTbl["U"] = "F";
XlationTbl["i"] = "C";
XlationTbl["I"] = "D";
XlationTbl["f"] = "G";
XlationTbl["e"] = "H";
XlationTbl["E"] = "I";
XlationTbl["o"] = "J";
XlationTbl["O"] = "K";
XlationTbl[";"] = "w";
XlationTbl[":"] = "x";
XlationTbl["*"] = "y";
XlationTbl["Ya"] = String.fromCharCode(201);
XlationTbl["GYa"] = String.fromCharCode(8216);
XlationTbl["/"] = String.fromCharCode(209);
XlationTbl["\\"] = String.fromCharCode(218);
XlationTbl["ka"] = "L";
XlationTbl["kka"] = String.fromCharCode(8218);
XlationTbl["kRa"] = "L" + String.fromCharCode(209);
XlationTbl["k.ta"] = String.fromCharCode(402);
XlationTbl["ksa"] = String.fromCharCode(8222);
XlationTbl["k.tra"] = String.fromCharCode(402) + String.fromCharCode(202);
XlationTbl["kta"] = String.fromCharCode(353) + String.fromCharCode(178);
XlationTbl["kra"] = "H" + String.fromCharCode(178);
XlationTbl["kba"] = "L" + String.fromCharCode(197);
XlationTbl["kma"] = "L" + String.fromCharCode(200);
XlationTbl["kla"] = "L" + String.fromCharCode(211);
XlationTbl["kna"] = "L" + String.fromCharCode(193);
XlationTbl["Ka"] = String.fromCharCode(77);
XlationTbl["KRa"] = String.fromCharCode(77) + String.fromCharCode(209);
XlationTbl["Kra"] = String.fromCharCode(77) + String.fromCharCode(202);
XlationTbl["ga"] = String.fromCharCode(78);
XlationTbl["gRa"] = String.fromCharCode(78) + String.fromCharCode(209);
XlationTbl["gga"] = String.fromCharCode(8224);
XlationTbl["gDa"] = String.fromCharCode(8225);
XlationTbl["gna"] = String.fromCharCode(78) + String.fromCharCode(192);
XlationTbl["gba"] = String.fromCharCode(78) + String.fromCharCode(196);
XlationTbl["gma"] = String.fromCharCode(78) + String.fromCharCode(200);
XlationTbl["gra"] = String.fromCharCode(78) + String.fromCharCode(202);
XlationTbl["gla"] = String.fromCharCode(78) + String.fromCharCode(212);
XlationTbl["gu"] = String.fromCharCode(8230);
XlationTbl["Ga"] = String.fromCharCode(79);
XlationTbl["GRa"] = String.fromCharCode(79) + String.fromCharCode(209);
XlationTbl["Gna"] = String.fromCharCode(79) + String.fromCharCode(192);
XlationTbl["Gra"] = String.fromCharCode(79) + String.fromCharCode(202);
XlationTbl["~Na"] = String.fromCharCode(80);
XlationTbl["~NRa"] = String.fromCharCode(80) + String.fromCharCode(209);
XlationTbl["~Nka"] = String.fromCharCode(710);
XlationTbl["~Nga"] = String.fromCharCode(8240);
XlationTbl["~NKa"] = String.fromCharCode(180) + String.fromCharCode(77);
XlationTbl["~NGa"] = String.fromCharCode(180) + String.fromCharCode(79);
XlationTbl["~Nna"] = String.fromCharCode(180) + String.fromCharCode(101);
XlationTbl["~Nma"] = String.fromCharCode(180) + String.fromCharCode(106);
XlationTbl["ca"] = String.fromCharCode(81);
XlationTbl["cRa"] = String.fromCharCode(81) + String.fromCharCode(209);
XlationTbl["c~na"] = String.fromCharCode(352);
XlationTbl["cca"] = String.fromCharCode(181) + String.fromCharCode(81);
XlationTbl["cCa"] = String.fromCharCode(181) + String.fromCharCode(82);
XlationTbl["Ca"] = String.fromCharCode(82);
XlationTbl["CRa"] = String.fromCharCode(82) + String.fromCharCode(209);
XlationTbl["Cra"] = String.fromCharCode(82) + String.fromCharCode(202);
XlationTbl["ja"] = String.fromCharCode(83);
XlationTbl["jRa"] = String.fromCharCode(83) + String.fromCharCode(209);
XlationTbl["jja"] = String.fromCharCode(8249);
XlationTbl["jJa"] = String.fromCharCode(338);
XlationTbl["j~na"] = String.fromCharCode(8216);
XlationTbl["jjba"] = String.fromCharCode(8249) + String.fromCharCode(196);
XlationTbl["jba"] = String.fromCharCode(83) + String.fromCharCode(196);
XlationTbl["jra"] = String.fromCharCode(83) + String.fromCharCode(202);
XlationTbl["Ja"] = String.fromCharCode(84);
XlationTbl["JRa"] = String.fromCharCode(84) + String.fromCharCode(209);
XlationTbl["~na"] = String.fromCharCode(85);
XlationTbl["~nca"] = String.fromCharCode(8217);
XlationTbl["~nCa"] = String.fromCharCode(8220);
XlationTbl["~nja"] = String.fromCharCode(8221);
XlationTbl["~nJa"] = String.fromCharCode(8226);
XlationTbl["~ncba"] = String.fromCharCode(8217) + String.fromCharCode(197);
XlationTbl[".ta"] = String.fromCharCode(86);
XlationTbl[".tRa"] = String.fromCharCode(86) + String.fromCharCode(209);
XlationTbl[".t.ta"] = String.fromCharCode(8211);
XlationTbl[".tra"] = String.fromCharCode(86) + String.fromCharCode(202);
XlationTbl[".Ta"] = String.fromCharCode(87);
XlationTbl[".TRa"] = String.fromCharCode(87) + String.fromCharCode(209);
XlationTbl[".da"] = String.fromCharCode(88);
XlationTbl[".d.da"] = String.fromCharCode(8212);
XlationTbl[".dRa"] = String.fromCharCode(88) + String.fromCharCode(209);
XlationTbl[".dra"] = String.fromCharCode(88) + String.fromCharCode(202);
XlationTbl[".Da"] = String.fromCharCode(89);
XlationTbl[".DRa"] = String.fromCharCode(89) + String.fromCharCode(209);
XlationTbl["Na"] = String.fromCharCode(90);
XlationTbl["NRa"] = String.fromCharCode(90) + String.fromCharCode(209);
XlationTbl["N.Ta"] = String.fromCharCode(732);
XlationTbl["N.ta"] = String.fromCharCode(184) + String.fromCharCode(86);
XlationTbl["N.tra"] = String.fromCharCode(184) + String.fromCharCode(86) + String.fromCharCode(202);
XlationTbl["Nma"] = String.fromCharCode(90) + String.fromCharCode(200);
XlationTbl["ta"] = String.fromCharCode(97);
XlationTbl["tRa"] = String.fromCharCode(97) + String.fromCharCode(209);
XlationTbl["tta"] = String.fromCharCode(353);
XlationTbl["tra"] = String.fromCharCode(339);
XlationTbl["ttba"] = String.fromCharCode(353) + String.fromCharCode(196);
XlationTbl["tTa"] = String.fromCharCode(8250);
XlationTbl["tna"] = String.fromCharCode(97) + String.fromCharCode(192);
XlationTbl["tba"] = String.fromCharCode(97) + String.fromCharCode(196);
XlationTbl["Ta"] = String.fromCharCode(98);
XlationTbl["TRa"] = String.fromCharCode(98) + String.fromCharCode(209);
XlationTbl["Tra"] = String.fromCharCode(98) + String.fromCharCode(202);
XlationTbl["da"] = String.fromCharCode(99);
XlationTbl["dRa"] = String.fromCharCode(99) + String.fromCharCode(209);
XlationTbl["dda"] = String.fromCharCode(376);
XlationTbl["dDa"] = String.fromCharCode(220);
XlationTbl["dDba"] = String.fromCharCode(222);
XlationTbl["dba"] = String.fromCharCode(224);
XlationTbl["dBa"] = String.fromCharCode(225);
XlationTbl["dra"] = String.fromCharCode(226);
XlationTbl["dga"] = String.fromCharCode(99) + String.fromCharCode(179);
XlationTbl["dma"] = String.fromCharCode(99) + String.fromCharCode(200);
XlationTbl["Da"] = String.fromCharCode(100);
XlationTbl["DRa"] = String.fromCharCode(100) + String.fromCharCode(209);
XlationTbl["Dba"] = String.fromCharCode(100) + String.fromCharCode(196);
XlationTbl["Dra"] = String.fromCharCode(100) + String.fromCharCode(202);
XlationTbl["na"] = String.fromCharCode(101);
XlationTbl["nRa"] = String.fromCharCode(101) + String.fromCharCode(209);
XlationTbl["n.da"] = String.fromCharCode(228);
XlationTbl["n.Ta"] = String.fromCharCode(227);
XlationTbl["nDa"] = String.fromCharCode(229);
XlationTbl["nna"] = String.fromCharCode(230);
XlationTbl["n.ta"] = String.fromCharCode(184) + String.fromCharCode(86);
XlationTbl["n.tra"] = String.fromCharCode(184) + String.fromCharCode(86) + String.fromCharCode(202);
XlationTbl["nta"] = String.fromCharCode(184) + String.fromCharCode(97);
XlationTbl["nTa"] = String.fromCharCode(184) + String.fromCharCode(98);
XlationTbl["nda"] = String.fromCharCode(184) + String.fromCharCode(99);
XlationTbl["ndra"] = String.fromCharCode(184) + String.fromCharCode(99) + String.fromCharCode(202);
XlationTbl["nDra"] = String.fromCharCode(229) + String.fromCharCode(202);
XlationTbl["nba"] = String.fromCharCode(101) + String.fromCharCode(196);
XlationTbl["nma"] = String.fromCharCode(191) + String.fromCharCode(106);
XlationTbl["nsa"] = String.fromCharCode(184) + String.fromCharCode(112);
XlationTbl["ntra"] = String.fromCharCode(191) + String.fromCharCode(187);
XlationTbl["pa"] = String.fromCharCode(102);
XlationTbl["pRa"] = String.fromCharCode(102) + String.fromCharCode(209);
XlationTbl["pra"] = String.fromCharCode(102) + String.fromCharCode(202);
XlationTbl["pta"] = String.fromCharCode(231);
XlationTbl["ppa"] = String.fromCharCode(232);
XlationTbl["p.ta"] = String.fromCharCode(195) + String.fromCharCode(86);
XlationTbl["pna"] = String.fromCharCode(102) + String.fromCharCode(192);
XlationTbl["pla"] = String.fromCharCode(102) + String.fromCharCode(212);
XlationTbl["psa"] = String.fromCharCode(195) + String.fromCharCode(112);
XlationTbl["Pa"] = String.fromCharCode(103);
XlationTbl["PRa"] = String.fromCharCode(103) + String.fromCharCode(209);
XlationTbl["Pra"] = String.fromCharCode(103) + String.fromCharCode(202);
XlationTbl["Pla"] = String.fromCharCode(103) + String.fromCharCode(211);
XlationTbl["ba"] = String.fromCharCode(104);
XlationTbl["bRa"] = String.fromCharCode(104) + String.fromCharCode(209);
XlationTbl["bra"] = String.fromCharCode(104) + String.fromCharCode(202);
XlationTbl["bla"] = String.fromCharCode(104) + String.fromCharCode(212);
XlationTbl["bja"] = String.fromCharCode(234);
XlationTbl["bda"] = String.fromCharCode(235);
XlationTbl["bDa"] =  String.fromCharCode(236);
XlationTbl["bba"] =  String.fromCharCode(238);
XlationTbl["Ba"] = String.fromCharCode(105);
XlationTbl["BRa"] =  String.fromCharCode(105) +  String.fromCharCode(209);
XlationTbl["Bra"] =  String.fromCharCode(239);
XlationTbl["ma"] = String.fromCharCode(106);
XlationTbl["mRa"] =  String.fromCharCode(106) +  String.fromCharCode(209);
XlationTbl["mBa"] = String.fromCharCode(241);
XlationTbl["mra"] = String.fromCharCode(106) + String.fromCharCode(202);
XlationTbl["mma"] = String.fromCharCode(199) + String.fromCharCode(106);
XlationTbl["mpa"] = String.fromCharCode(199) + String.fromCharCode(102);
XlationTbl["mPa"] = String.fromCharCode(199) + String.fromCharCode(103);
XlationTbl["mna"] = String.fromCharCode(199) + String.fromCharCode(101);
XlationTbl["mba"] = String.fromCharCode(199) + String.fromCharCode(104);
XlationTbl["mla"] = String.fromCharCode(199) + String.fromCharCode(109);
XlationTbl["mBra"] = String.fromCharCode(242);
XlationTbl[".ja"] = String.fromCharCode(107);
XlationTbl[".jRa"] = String.fromCharCode(107) + String.fromCharCode(209);
XlationTbl["ra"] = String.fromCharCode(108);
XlationTbl["rRa"] = String.fromCharCode(108) + String.fromCharCode(209);
XlationTbl["la"] = String.fromCharCode(109);
XlationTbl["lRa"] = String.fromCharCode(109) + String.fromCharCode(209);
XlationTbl["lka"] = String.fromCharCode(243);
XlationTbl["lga"] = String.fromCharCode(210) + String.fromCharCode(78);
XlationTbl["l.da"] = String.fromCharCode(244);
XlationTbl["l.ta"] = String.fromCharCode(210) + String.fromCharCode(86);
XlationTbl["lla"] = String.fromCharCode(245);
XlationTbl["lpa"] = String.fromCharCode(210) + String.fromCharCode(102);
XlationTbl["lba"] = String.fromCharCode(210) + String.fromCharCode(104);
XlationTbl["lma"] = String.fromCharCode(210) + String.fromCharCode(106);
XlationTbl["Sa"] = String.fromCharCode(110);
XlationTbl["SRa"] = String.fromCharCode(110) + String.fromCharCode(209);
XlationTbl["Sta"] = String.fromCharCode(247);
XlationTbl["Su"] = String.fromCharCode(246);
XlationTbl["Sca"] = String.fromCharCode(213) + String.fromCharCode(81);
XlationTbl["SCa"] = String.fromCharCode(213) + String.fromCharCode(82);
XlationTbl["Sna"] = String.fromCharCode(110) + String.fromCharCode(192);
XlationTbl["Sma"] = String.fromCharCode(110) + String.fromCharCode(200);
XlationTbl["Sra"] = String.fromCharCode(110) + String.fromCharCode(202);
XlationTbl["Sla"] = String.fromCharCode(110) + String.fromCharCode(212);
XlationTbl["Sba"] = String.fromCharCode(110) + String.fromCharCode(196);
XlationTbl[".Sa"] = String.fromCharCode(111);
XlationTbl[".SRa"] = String.fromCharCode(111) + String.fromCharCode(209);
XlationTbl[".S.ta"] = String.fromCharCode(248);
XlationTbl[".S.Ta"] = String.fromCharCode(249);
XlationTbl[".Ska"] = String.fromCharCode(214) + String.fromCharCode(76);
XlationTbl[".S~na"] = String.fromCharCode(111) + String.fromCharCode(8729);
XlationTbl[".Spa"] = String.fromCharCode(214) + String.fromCharCode(102);
XlationTbl[".Spra"] = String.fromCharCode(214) + String.fromCharCode(102) + String.fromCharCode(202);
XlationTbl[".Sma"] = String.fromCharCode(214) + String.fromCharCode(106);
XlationTbl[".S.tra"] = String.fromCharCode(248) + String.fromCharCode(202);
XlationTbl["sa"] = String.fromCharCode(112);
XlationTbl["sRa"] = String.fromCharCode(112) + String.fromCharCode(209);
XlationTbl["ska"] = String.fromCharCode(250);
XlationTbl["skra"] = String.fromCharCode(251);
XlationTbl["sba"] = String.fromCharCode(252);
XlationTbl["s.ta"] = String.fromCharCode(216) + String.fromCharCode(86);
XlationTbl["sta"] = String.fromCharCode(216) + String.fromCharCode(97);
XlationTbl["sTa"] = String.fromCharCode(216) + String.fromCharCode(98);
XlationTbl["sDa"] = String.fromCharCode(252) + String.fromCharCode(169);
XlationTbl["sna"] = String.fromCharCode(112) + String.fromCharCode(192);
XlationTbl["spa"] = String.fromCharCode(216) + String.fromCharCode(102);
XlationTbl["sPa"] = String.fromCharCode(216) + String.fromCharCode(103);
XlationTbl["sma"] = String.fromCharCode(216) + String.fromCharCode(106);
XlationTbl["sla"] = String.fromCharCode(216) + String.fromCharCode(109);
XlationTbl["sra"] = String.fromCharCode(112) + String.fromCharCode(202);
XlationTbl["smra"] = String.fromCharCode(216) + String.fromCharCode(106) + String.fromCharCode(202);
XlationTbl["stra"] = String.fromCharCode(216) + String.fromCharCode(339);
XlationTbl["s.tra"] = String.fromCharCode(216) + String.fromCharCode(86) + String.fromCharCode(202);
XlationTbl["spra"] = String.fromCharCode(216) + String.fromCharCode(102) + String.fromCharCode(202);
XlationTbl["ha"] = String.fromCharCode(113);
XlationTbl["hu"] = String.fromCharCode(253);
XlationTbl["hRa"] = String.fromCharCode(113) + String.fromCharCode(209);
XlationTbl["hla"] = String.fromCharCode(113) + String.fromCharCode(212);
XlationTbl["hna"] = String.fromCharCode(113) + String.fromCharCode(178);
XlationTbl["hra"] = String.fromCharCode(113) + String.fromCharCode(202);
XlationTbl["hf"] = String.fromCharCode(113) + String.fromCharCode(169);
XlationTbl["hba"] = String.fromCharCode(113) + String.fromCharCode(196);
XlationTbl["hma"] = String.fromCharCode(254);
XlationTbl["xa"] = String.fromCharCode(114);
XlationTbl["xma"] = String.fromCharCode(114) + String.fromCharCode(200);
XlationTbl["xna"] = String.fromCharCode(114) + String.fromCharCode(193);
XlationTbl["x~Na"] = String.fromCharCode(180) + String.fromCharCode(114);
XlationTbl["Ra"] = String.fromCharCode(115);
XlationTbl[".Ra"] = String.fromCharCode(116);
XlationTbl["ya"] = String.fromCharCode(117);
XlationTbl["@"] = String.fromCharCode(118);
XlationTbl["|"] = String.fromCharCode(122);
XlationTbl["<"] = String.fromCharCode(71);
XlationTbl["$"] = String.fromCharCode(8230);
XlationTbl["&"] = String.fromCharCode(246);
XlationTbl["f"] = String.fromCharCode(210);
XlationTbl["q"] = String.fromCharCode(226) + String.fromCharCode(166);
XlationTbl["w"] = String.fromCharCode(100) + String.fromCharCode(202) + String.fromCharCode(166);
XlationTbl["h<"] = String.fromCharCode(113) + String.fromCharCode(169);
XlationTbl["rU"] = String.fromCharCode(108) + String.fromCharCode(169);
XlationTbl["BrU"] = String.fromCharCode(239) + String.fromCharCode(169);

MatraA = String.fromCharCode(91);
Matrae = String.fromCharCode(174);
MatraE = String.fromCharCode(175);
Matrai = String.fromCharCode(162);
MatraI = String.fromCharCode(163);
MatraoLt = String.fromCharCode(174);
MatraoRt = String.fromCharCode(91);
MatraOLt = String.fromCharCode(174);
MatraORt = String.fromCharCode(177);
Matrau = String.fromCharCode(164);
MatraU = String.fromCharCode(167);
MatraRi = String.fromCharCode(170);
MatraR = String.fromCharCode(202);

var BanglishText = "";
var CurrWrd = "";
var ParaStrt = "<p>";
var ParaEnd = "</p>";
var LineBreak = "<br>";
var NoLineBreakStrt = "<nobr>";
var NoLineBreakEnd = "</nobr>";
var SpaceTag = "&nbsp;";
var html = "";
var EngFntFace="'Arial'";
var BngFntFace="'BanglaFontNormal'";
var FntSz = 4;
var EngFntTagBeg = "<font color=\"#AA0000\" face= " + EngFntFace + " size=" + FntSz + " >";
var BngFntTagBeg = "<font color=\"#AA0000\" face= " + BngFntFace + " size=" + FntSz + " >";
var FntTagEnd = "</font>";
var CurrLetter = "";
var ParaChg = false;
var loc = 0;
var AtStrt = 0;
var AtEnd = 1;
var endHtml = "";

var EngBegChar = "{";
var EngEndChar = "}";
var Banglisha = "a";
var BanglishA = "A";
var Banglishi = "i";
var BanglishI = "I";
var Banglishe = "e";
var BanglishE = "E";
var Banglishu = "u";
var BanglishU = "U";
var Banglisho = "o";
var BanglishO = "O";
var BanglishRi = "<";
var BanglishR = "_";
var BanglishOng = ";";
var BanglishOh = ":";
var BanglishDari = "|";
var BanglishQuest = "?";
var BanglishExcl = "!";
var BanglishEndofKhandotta = "@";
var BanglishChandra = "*";
var BanglishRef = "/";
var BanglishHasanta = "\\\\";
var BanglishGu = "$";
var BanglishShu = "&";
var BanglishHalfLa = "f";
var Banglishdru = "q";
var BanglishDru = "w";
var BanglishHu = "hu";
var Banglishhri = "h<";
var BanglishrU = "rU";
var BanglishBrU = "BrU"; 
var Space = " ";
var CarrRet = "\r";
var NewLine = "\n";
var LetterDelim = Banglisha + BanglishA + Banglishi + BanglishI + Banglishe + BanglishE + Banglishu + BanglishU + Banglisho + BanglishO + BanglishRi + BanglishR;
LetterDelim += BanglishOng + BanglishOh + BanglishDari + BanglishQuest + BanglishExcl + BanglishEndofKhandotta + BanglishChandra + BanglishHasanta + BanglishRef;
LetterDelim += BanglishGu + BanglishShu;
var MatraSet = BanglishA + Banglishi + BanglishI + Banglishe + BanglishE + Banglishu + BanglishU + Banglisho + BanglishO + BanglishRi + BanglishR;
var WordDelim = Space + CarrRet + NewLine + BanglishQuest + BanglishDari + BanglishExcl + BanglishChandra + BanglishRef + BanglishHasanta + BanglishEndofKhandotta;
WordDelim += BanglishGu + BanglishShu + EngEndChar;

var regExpToSrchMatraAtEnd = new RegExp("[" + MatraSet + "]$", "g");

function PlaceLetterWithMatra()
{
	if(Matra == Banglishu && ((CurrLetter == "ga") || (CurrLetter == "Sa") || (CurrLetter == "lga") || (CurrLetter == "dra")
		|| (CurrLetter == "Dra") || (CurrLetter == "ha")))
	{
		if(CurrLetter == "ga")
		{
			html += XlationTbl[BanglishGu];
		}
		else if(CurrLetter == "Sa")
		{
			html += XlationTbl[BanglishShu];
		}
		else if(CurrLetter == "lga")
		{
			html += XlationTbl[BanglishHalfLa] + XlationTbl[BanglishGu];
		}
		else if(CurrLetter == "dra")
		{
			html += XlationTbl[Banglishdru];
		}
		else if(CurrLetter == "Dra")
		{
			html += XlationTbl[BanglishDru];
		}
		else if(CurrLetter == "ha")
		{
			html += XlationTbl[BanglishHu];
		}
	}
	else if(Matra == BanglishU && ((CurrLetter == "ra") || (CurrLetter == "Bra")))
	{
		if(CurrLetter == "ra")
		{
			html += XlationTbl[BanglishrU];
		}
		else
		{
			html += XlationTbl[BanglishBrU];
		}
	}
	else if(Matra == BanglishRi && (CurrLetter == "ha"))
	{
		html += XlationTbl[Banglishhri];
	}
	else
	{
		if(Matra == Banglishe)
		{
			html += Matrae;
		}
		else if(Matra == BanglishE)
		{
			html += MatraE;
		}
		else if(Matra == Banglishi)
		{
			html += Matrai;
		}
		else if(Matra == Banglisho)
		{
			html += MatraoLt;
		}
		else if(Matra == BanglishO)
		{
			html += MatraOLt;
		}

		if(XlationTbl[CurrLetter] == undefined)
		{
			html += FntTagEnd + EngFntTagBeg + CurrLetter + FntTagEnd + BngFntTagBeg;
		}
		else
		{
			html += XlationTbl[CurrLetter];
		}

		if(Matra == BanglishA)
		{
			html += MatraA;
		}
		else if(Matra == BanglishI)
		{
			html += MatraI;
		}
		else if(Matra == Banglisho)
		{
			html += MatraoRt;
		}
		else if(Matra == BanglishO)
		{
			html += MatraORt;
		}
		else if(Matra == Banglishu)
		{
			html += Matrau;
		}
		else if(Matra == BanglishU)
		{
			html += MatraU;
		}
		else if(Matra == BanglishRi)
		{
			html += MatraRi;
		}
		else if(Matra == BanglishR)
		{
			html += MatraR;
		}
	}
}

function TranslateEnglishText()
{
EngLocStrt = 0;
while(EngLocStrt != -1)
{
	ConvertSpacesAndNewLines(BanglishText, AtStrt);
	BanglishText = BanglishText.replace(/^[\s\r\n]+/g, "");
	WrdDel = BanglishText.search("[" + WordDelim + "]");
	if(WrdDel == -1)
	{
		WrdDel = BanglishText.search("[" + LetterDelim + "]$");
		if (WrdDel == -1 && BanglishText.length != 0)
		{
			html += FntTagEnd + EngFntTagBeg + BanglishText + FntTagEnd + BngFntTagBeg;
		}
	}

	EngLocStrt = BanglishText.search("[" + EngBegChar + "]");
	if(EngLocStrt != -1 && EngLocStrt < WrdDel)
	{
		html += FntTagEnd + EngFntTagBeg;
		EngLocEnd = BanglishText.search("[" + EngEndChar + "]");
		html += " " + BanglishText.substr(EngLocStrt+1, EngLocEnd-1) + " ";
		BanglishText = BanglishText.substr(EngLocEnd+2);
		html += FntTagEnd + BngFntTagBeg;
	}
	else
	{
		EngLocStrt = -1;
		EngLocEnd = -1;
	}
}
}

function ConvertSpacesAndNewLines(str, pos)
{
	var i = 0;
	var ch = str.charAt(0);	
	var PrevCh  = 'A';

	endHtml = "&nbsp;";
	if(pos == AtEnd)
	{
		i = str.search("[ \r\n]");
		if(i == -1)
		{
			i = 0;
		}
		else
		{
			ch = str.charAt(i);
		}
	}
	while((i <= str.length) && (ch == Space || ch == CarrRet || ch == NewLine))
	{
		if(ch == Space)
		{
			if(pos == AtEnd)
			{
				endHtml += SpaceTag;
			}
			else
			{
				html += SpaceTag;
			}
		}
		else if(ch == CarrRet || ch == NewLine)
		{
			if(PrevCh == 'A')
			{
				if(pos == AtEnd)
				{
					endHtml += LineBreak;
				}
				else
				{
					html += LineBreak;
				}
				PrevCh = CarrRet;
			}
			else
			{
				PrevCh = 'A';
			}
		}
		i++;
		ch = str.charAt(i);
	}
}

function ConvertToBanglaScript(){

ParaChg = false;
BanglishText = document.conversion.banglish.value;
html = ParaStrt + BngFntTagBeg;
WrdDel = 0;
while(WrdDel != -1)
{
	TranslateEnglishText();	
	EngLocStrt = 0;
	
	html += endHtml;
	CurrWrd = BanglishText.substr(0, WrdDel+1);
	ConvertSpacesAndNewLines(CurrWrd, AtEnd);
	CurrWrd = CurrWrd.replace(/[\s\r\n]+$/g, "");
	html += NoLineBreakStrt;
	loc = CurrWrd.search("[" + LetterDelim + "]");
	if (loc == -1 && CurrWrd.length != 0)
	{
		html += FntTagEnd + EngFntTagBeg + CurrWrd + FntTagEnd + BngFntTagBeg;
	}
	while(loc != -1)
	{
		CurrLetter = CurrWrd.substr(0, loc+1);
		Matra = CurrLetter.charAt(loc);
		if(loc == 0)
		{
			if(XlationTbl[CurrLetter] == undefined)
			{
				html += FntTagEnd + EngFntTagBeg + CurrLetter + FntTagEnd + BngFntTagBeg;
			}
			else
			{
				html += XlationTbl[CurrLetter];
			}
		}
		else
		{
			if(CurrLetter.charAt(loc) != 'a')
			{
				CurrLetter = CurrLetter.replace(regExpToSrchMatraAtEnd, Banglisha);
			}
			PlaceLetterWithMatra();
		}
		CurrWrd = CurrWrd.substr(loc+1);
		loc = CurrWrd.search("[" + LetterDelim + "]");
		if (loc == -1 && CurrWrd.length != 0)
		{
			html += FntTagEnd + EngFntTagBeg + CurrWrd + FntTagEnd + BngFntTagBeg;
		}
	}
	html += NoLineBreakEnd;
	BanglishText = BanglishText.substr(WrdDel+1);
}
html += FntTagEnd + ParaEnd;
document.all.divBangla.innerHTML = html;
}

function ResetValues()
{
	document.all.divBangla.innerHTML = "";
	document.conversion.banglish.value = "";
}
