 /************************************************************************************ * * Author: Deepak Khanal (dkhanal@gmail.com) * Copyrights: Deepak Khanal * ***********************************************************************************/      var uD = new Object; var uDR = new Object;  var sW = new Object; var cR = new Object; var iW = new Object;  iW["cha"] = "chha"; iW["chu"] = "chhu"; iW["chha"] = "chha"; iW["ma"] = "ma"; iW["aba"] = "aba"; iW["nam"] = "naam"; iW["ram"] = "raam"; iW["lai"] = "laaii"; iW["pani"] = "pani/"; iW["pai"] = "paaii"; iW["dai"] = "daaii"; iW["bhai"] = "bhaaii"; iW["rai"] = "raaii"; iW["garda"] = "gardaa"; iW["you"]  = "yau"; iW["name"] = "nema"; iW["my"] = "maai";   function _0001x(_0010y, _0011z) { if(sW["smartconverter_on"] == "true") _0010y = _0010y.replace(/\s*\./g, " .").replace(/\s*\?/g, " ?");  _0010y= _0010y.replace(/T/g, "^^t^^").replace(/D/g, "^^d^^").replace(/N/g, "^^n^^").replace(/SH/g, "^^sh^^").replace(/Sh/g, "^^sh^^"); _0010y=_0010y.toLowerCase(); _0010y= _0010y.replace(/\^\^t\^\^/g, "T").replace(/\^\^d\^\^/g, "D").replace(/\^\^n\^\^/g, "N").replace(/\^\^sh\^\^/g, "Sh");  var _0100a = _0010y.split(" "); var rVal = ""; var subs; for(i=0;i<_0100a.length;i++) { if(sW["smartconverter_on"] == "true") { var w__0101b = _0100a[i].replace(/[\;\,\'\",\?\.\-\+\=\&\!:\(\)\*\|\\]*$/, '');  if(_1001f(w__0101b)); else if(iW[w__0101b]) _0100a[i] = iW[w__0101b] + _0100a[i].substring(_0100a[i].length - (_0100a[i].length - w__0101b.length)); else if(w__0101b.length > 3) { var ec_0, ec_1, ec_2, ec_3, w__0101b_len; w__0101b_len = w__0101b.length; ec_0 = w__0101b.charAt(w__0101b.length -1).toLowerCase(); ec_1 = w__0101b.charAt(w__0101b.length -2).toLowerCase(); ec_2 = w__0101b.charAt(w__0101b.length -3).toLowerCase(); ec_3 = w__0101b.charAt(w__0101b.length -4).toLowerCase();  if(ec_0  == 'u' && ec_1  == 'a' && ec_2  == 'h' && ec_3  == 'c')  w__0101b = w__0101b.substring(0, w__0101b.length -4) + "chhau"; if((ec_0  == 'a' || ec_0  == 'e' || ec_0  == 'u') && ec_1  == 'h' && ec_2  == 'c')  w__0101b = w__0101b.substring(0, w__0101b.length -3) + "chh" + ec_0; else if(ec_0  == 'i' && ec_1  == 'a' && ec_2  == 'l')  w__0101b = w__0101b.substring(0, w__0101b.length -3) + "laaii"; else if(ec_0  == 'y')  w__0101b= w__0101b.substring(0, w__0101b.length -1) + "ee"; else if(ec_0  == 'a' && ec_1 == 'm') { w__0101b+="a"; } else if(ec_0  == 's' && ec_1  == 'u' && ec_2  == 'n') ;  else if(ec_0  == 's' && ec_1  == 'o' && ec_2  == 'h') ;  else if(ec_0  == 'a' && ec_1  == 'h' && ec_2  == 'h') ;  else if(ec_0  == 'a' && ec_1  == 'n' && ec_2  == 'k') ;  else if(ec_0  == 'a' && ec_1  == 'n' && ec_2  == 'h') ;  else if(ec_0  == 'a' && ec_1  == 'n' && ec_2  == 'r') ;  else if(ec_0  == 'a' && ec_1  == 'r' && ec_2  == 'd'  && ec_3  == 'n') ;  else if(ec_0  == 'a' && ec_1  == 'n' && ec_2  == 'i'  && ec_3  == 'd') ;  else if(ec_0  == 'a' && ec_1  == 'r' && ec_2  == 't'  && ec_3  == 'n') ;  else if(ec_0  == 'a' && (!_11010w(ec_1) && !_11010w(ec_3) && ec_1 != 'y' && ec_2 != 'e'))  { w__0101b+="a"; } if(ec_0  == 'i' &&  !_11010w(ec_1)) w__0101b= w__0101b.substring(0, w__0101b.length -1) + "ee";  _0100a[i] = w__0101b + _0100a[i].substring((_0100a[i].length - (_0100a[i].length - w__0101b_len))); } } subs = _0100a[i].split("/"); for(j=0;j<subs.length;j++) if(subs[j].length != 0) rVal += _0110c(subs[j], _0011z); rVal += " "; } return rVal; }   function _0111c(t, ll, _0011z) { var u = ""; var _1000e = 0; var ar = t.split("+"); if(ll && ar && ar.length > 1 && sW["smartconverter_on"] == "true" && ar[ar.length-1] == "29" && ar[ar.length-2] != "1O") /* remove trailing short characther so that swagatam = swagatama but not for "garnuhos" */  _1000e = 1; if(ar) for(k=0; k<(ar.length - _1000e);k++) if(ar[k].length > 0 && !_0011z) { u +=String.fromCharCode(0x8fc + parseInt(ar[k], 36)); } else if(ar[k].length > 0 && _0011z) { u +="&#"+(0x8fc + parseInt(ar[k], 36))+";"; }  return u; }  function _1001f(s) { var _1010g; if(sW["smartconverter_on"] == "true") if(sW[s] || sW[s.replace(/[aA]$/, "")] || sW[s+"a"] )  return true;  for(_1010g = s.length-2; _1010g>=0;_1010g--) { var _0101b_S = s.substring(_1010g);  if(sW[_0101b_S] || sW[(_0101b_S.charAt(0).toLowerCase() + _0101b_S.substring(1))] || sW[(_0101b_S.charAt(0).toUpperCase() + _0101b_S.substring(1))] || sW[_0101b_S.toLowerCase()])  return true; else if(sW[_0101b_S.replace(/[b|w]/g, "v")] || sW[_0101b_S.replace(/[v|w]/g, "b")] || sW[_0101b_S.replace(/[v|b]/g, "w")] || sW[_0101b_S.replace(/sh/g, "s")] || sW[_0101b_S.replace(/Sh/g, "s")] || sW[_0101b_S.replace(/s/g, "sh")])  /*va = ba = wa; sha = sa */  return true; else if(sW[_0101b_S.replace(/bh/g, "v")] || sW[_0101b_S.replace(/v/g, "bh")] || sW[_0101b_S.replace(/ph/g, "f")] || sW[_0101b_S.replace(/f/g, "ph")]) return true; else if(sW[_0101b_S.replace(/ye/g, "e")] || sW[_0101b_S.replace(/e/g, "ye")] || sW[_0101b_S.replace(/aa/g, "a")] || sW[_0101b_S.replace(/a/g, "aa")]) return true; else if(sW[_0101b_S.replace(/ee/g, "i")] || sW[_0101b_S.replace(/i/g, "ee")] || sW[_0101b_S.replace(/oo/g, "u")] || sW[_0101b_S.replace(/u/g, "oo")]) return true; else if(sW[_0101b_S.replace(/ksh/g, "ch")] || sW[_0101b_S.replace(/chh/g, "ch")]) return true; } return false; }  function getFullAscii(s) { var gfaicAll = ""; var gfai; for(gfai = 0; gfai<s.length; gfai++) { var gfaic = s.charCodeAt(gfai); gfaicAll+= ""+((gfaic - 0x8fc)).toString(36).toUpperCase() + "+"; } if(gfaicAll.length > 0) gfaicAll = gfaicAll.substring(0, gfaicAll.length -1);  return uDR[gfaicAll];  }  function getAscii(s) { var _10001n = 0; var eTokens = new Object; var _10011p = ""; var _10011p_10100q = 1; var _10101r = "";   var gACode; for(_10001n = 0; _10001n < s.length; _10001n++) { gaCode = s.charCodeAt(_10001n); if(_10001n < s.length && ((gaCode > 47 && gaCode < 58)||(gaCode > 64 && gaCode < 91)||(gaCode > 96 && gaCode < 123)))  { _10011p = ""; while(_10001n < s.length && (s.charAt(_10001n).search(/[\s\n]/) >=0 || (gaCode > 47 && gaCode < 58)||(gaCode > 64 && gaCode < 91)||(gaCode > 96 && gaCode < 123)))  { _10011p += s.charAt(_10001n); _10001n++; if(_10001n < s.length) gaCode = s.charCodeAt(_10001n); } if(_10011p.length > 0) { eTokens[" $-"+_10011p_10100q+"-$ "] = _10011p.replace(/\s$/g, ""); _10011p_10100q++; } } } for (_10101r in eTokens) { s = s.replace(eTokens[_10101r], " "+_10101r+" ");  } var gAA = s.split(" "); var gAAi; for(gAAi=0; gAAi<gAA.length;gAAi++) { if(gAA[gAAi].search(/\$\-\d+\-\$/)<0) gAA[gAAi] = gaW(gAA[gAAi]); }  s = gAA.join(" "); for (_10101r in eTokens) { s = s.replace(" "+_10101r+" ", "{"+eTokens[_10101r]+"}");  } return s; }  function gaW(s) { var allAscii = ""; var u;  var _1100i = s; var _1101j = ""; while(_1100i.length > 0) { u = getFullAscii(_1100i);  if(u || _1100i.length <= 1) { if(!u) allAscii += _1100i; else allAscii += u;  _1100i = _1101j; _1101j = ""; } else { _1101j = _1100i.charAt(_1100i.length -1) + _1101j; _1100i = _1100i.substring(0, _1100i.length -1); } }  if(allAscii.length == 0) return s; else {  allAscii = allAscii.replace(/q/g, "k").replace(/ch/g, "~_$#").replace(/c/g, "k").replace(/~_\$\#/g, "ch").replace(/z/g, "j"); return allAscii; } }  function _0110c(s, _0011z) { var _1011h = ""; var u = sW[s]; var _1100i = s; var _1101j = "";  if(sW["smartconverter_on"] == "true") { if(!u && _1100i.length > 1) u = sW[s.replace(/[aA]$/, "")]; if(!u && _1100i.length > 1) u = sW[s+"a"];  if(u) return _0111c(u, !(_1101j.replace(/^\s+|\s+|\\$/, '').length>0), _0011z);  } while(_1100i.length > 0) {  if(sW["smartconverter_on"] == "true") { u = sW[_1100i]; if(!u && _1100i.length >= 1) u = uD[_1100i];  if(!u && _1100i.length > 1) u = sW[(_1100i.charAt(0).toLowerCase() + _1100i.substring(1))]; if(!u && _1100i.length > 1) u = sW[(_1100i.charAt(0).toUpperCase() + _1100i.substring(1))]; if(!u && _1100i.length > 1) u = sW[_1100i.toLowerCase()]; if(!u && _1100i.length > 1) u = sW[_1100i.replace(/[b|w]/g, "v")]; if(!u && _1100i.length > 1) u = sW[_1100i.replace(/[v|w]/g, "b")]; if(!u && _1100i.length > 1) u = sW[_1100i.replace(/[v|b]/g, "w")]; if(!u && _1100i.length > 1) u = sW[_1100i.replace(/sh/g, "s")]; if(!u && _1100i.length > 1) u = sW[_1100i.replace(/Sh/g, "s")]; if(!u && _1100i.length > 1) u = sW[_1100i.replace(/s/g, "sh")]; if(!u && _1100i.length > 1) u = sW[_1100i.replace(/v/g, "bh")]; if(!u && _1100i.length > 1) u = sW[_1100i.replace(/bh/g, "v")]; if(!u && _1100i.length > 1) u = sW[_1100i.replace(/f/g, "ph")]; if(!u && _1100i.length > 1) u = sW[_1100i.replace(/ph/g, "f")]; if(!u && _1100i.length > 1) u = sW[_1100i.replace(/ye/g, "e")]; if(!u && _1100i.length > 1) u = sW[_1100i.replace(/e/g, "ye")]; if(!u && _1100i.length > 1) u = sW[_1100i.replace(/aa/g, "a")]; if(!u && _1100i.length > 1) u = sW[_1100i.replace(/a/g, "aa")]; if(!u && _1100i.length > 1) u = sW[_1100i.replace(/i/g, "ee")]; if(!u && _1100i.length > 1) u = sW[_1100i.replace(/ee/g, "i")]; if(!u && _1100i.length > 1) u = sW[_1100i.replace(/oo/g, "u")]; if(!u && _1100i.length > 1) u = sW[_1100i.replace(/u/g, "oo")]; if(!u && _1100i.length > 1) u = sW[_1100i.replace(/ksh/g, "ch")]; if(!u && _1100i.length > 1) u = sW[_1100i.replace(/chh/g, "ch")]; } else u = uD[_1100i];  if(u || _1100i.length <= 1) { if(u) _1011h += _0111c(u, !(_1101j.replace(/^\s+|\s+|\\$/, '').length>0), _0011z); else if(_0011z)  { _1011h += _11101z(_1100i);  } else _1011h += _1100i; _1100i = _1101j; _1101j = ""; } else { _1101j = _1100i.charAt(_1100i.length -1) + _1101j; _1100i = _1100i.substring(0, _1100i.length -1); } } if(_1011h.length == 0)  return s; else return _1011h; }  function _11101z(s) { var ghfui; var ghfus = ""; for(ghfui=0; ghfui < s.length; ghfui++) { if(s.charCodeAt(ghfui) > 2300) ghfus+= "&#"+s.charCodeAt(ghfui)+";"; else ghfus += s.charAt(ghfui); } return ghfus; } function fts(_11000u, _0011z, smart) { smartConverter(smart); var _10001n = 0; var _10010o = -1; var _10110s = new Object; var _10011p = ""; var _10011p_10100q = 1; var _10101r = ""; while(_10001n > -1 && _10010o < _11000u.length -1) { _10001n = _11000u.indexOf("{", _10010o + 1); if(_10001n > -1) { _10010o = _11000u.indexOf("}", _10001n + 1); if(_10010o == -1) _10010o = _11000u.length - 1;  _10011p = _11000u.substring(_10001n, _10010o + 1); _10101r = "$-"+_10011p_10100q+"-$"; _10110s[_10101r] = _10011p.substring(1, _10011p.length-1); _11000u = _11000u.replace(_10011p, _10101r); _10010o = _10010o - _10011p.length + _10101r.length; _10011p_10100q++; } }  var _10111t = new Object; if(smart) { smartConverter(false); _10001n = 0; _10010o = -1; _10011p = ""; _10101r = ""; while(_10001n > -1 && _10010o < _11000u.length -1) { _10001n = _11000u.indexOf("[", _10010o + 1); if(_10001n > -1) { _10010o = _11000u.indexOf("]", _10001n + 1); if(_10010o == -1) _10010o = _11000u.length - 1;  _10011p = _11000u.substring(_10001n, _10010o + 1); _10101r = "$-"+_10011p_10100q+"-$"; _10111t[_10101r] = _0001x(_10011p.substring(1, _10011p.length-1), _0011z); _11000u = _11000u.replace(_10011p, _10101r); _10010o = _10010o - _10011p.length + _10101r.length; _10011p_10100q++; } } smartConverter(true); }  var _11001v =  _0001x(_11000u, _0011z);  if(smart) { for (_10101r in _10111t) { _11001v = _11001v.replace(_0001x(_10101r, _0011z).replace(" ", ""), _10111t[_10101r].replace(/\s$/, "")); } }  for (_10101r in _10110s) { _11001v = _11001v.replace(_0001x(_10101r, _0011z).replace(" ", ""), _10110s[_10101r]); }  return _11001v; }  function _11010w(c) { c = c.toLowerCase(); if(c && c =="a" || c =="e" || c =="i" || c =="o" || c =="u") return true; return false; }  function smartConverter(smartflag) { if(smartflag) { sW["smartconverter_on"] = "true"; } else { sW["smartconverter_on"] = null; }  }    