function fm_decode(str_to){
	fm_search = new Array("%F00;","%F01;","%F02;","%F03;","%F04;","%F05;","%F06;","%F07;","%F08;","%F09;","%F20;","%F21;","%F22;","%F23;","%F24;","%F25;","%F26;","%F27;","%F28;","%F29;","%F100;","%F101;","%F102;","%F103;","%F104;",
		"%F100;","%F101;","%F102;","%F103;","%F104;","%F105;","%F106;","%F107;","%F108;","%F109;","%F110;","%F111;","%F112;","%F113;","%F114;","%F115;","%F116;","%F117;","%F118;","%F119;",
		"%F120;","%F121;","%F122;","%F123;","%F124;","%F125;","%F126;","%F127;","%F128;","%F129;","%F130;","%F131;","%F132;","%F133;","%F134;","%F135;","%F136;","%F137;","%F138;","%F139;",
		"%F140;","%F141;","%F142;","%F143;","%F144;","%F145;","%F146;","%F147;","%F148;","%F149;","%F150;","%F151;","%F152;","%F153;","%F154;","%F155;","%F156;","%F157;","%F158;","%F159;",
		"%F160;","%F161;","%F162;","%F163;","%F164;","%F165;","%F166;","%F167;","%F168;","%F169;","%F170;","%F171;","%F172;","%F173;","%F174;","%F175;","%F176;","%H300;","%H301;");
	
	fm_replace = new Array("±","ê","æ","ê","³","ñ","ó","¶","¿","¼","¡","Ê","Æ","Ê","£","Ñ","Ó","¦","¯","¬","ý","Ï","ö","ï","í",
		"¢","¤","¥","§","¨","©","ª","«","®","°","²","´","µ","·","¸","¹","º","»","½","¾",
		"À","Á","Â","Ã","Ä","Å","Ç","È","É","Ë","Ì","Í","Î","Ï","Ð","Ò","Ô","Õ","Ö","×",
		"Ø","Ù","Ú","Û","Ü","Ý","Þ","ß","à","á","â","ã","ä","å","ç","è","é","ë","ì","í",
		"î","ï","ð","ò","ô","õ","ö","÷","ø","ù","ú","û","ü","ý","þ","ÿ","&","<b>","</b>");

	str_new = str_replace(fm_search, fm_replace, str_to);//str.replace(/;F15;/g, "ó±êæ³ó¿¼");
	return str_new;
	/*return str;*/
}


function fm_encode(str_to){
	fm_replace = new Array("%F00;","%F01;","%F02;","%F03;","%F04;","%F05;","%F06;","%F07;","%F08;","%F09;","%F20;","%F21;","%F22;","%F23;","%F24;","%F25;","%F26;","%F27;","%F28;","%F29;","%F100;","%F101;","%F102;","%F103;","%F104;",
		"%F100;","%F101;","%F102;","%F103;","%F104;","%F105;","%F106;","%F107;","%F108;","%F109;","%F110;","%F111;","%F112;","%F113;","%F114;","%F115;","%F116;","%F117;","%F118;","%F119;",
		"%F120;","%F121;","%F122;","%F123;","%F124;","%F125;","%F126;","%F127;","%F128;","%F129;","%F130;","%F131;","%F132;","%F133;","%F134;","%F135;","%F136;","%F137;","%F138;","%F139;",
		"%F140;","%F141;","%F142;","%F143;","%F144;","%F145;","%F146;","%F147;","%F148;","%F149;","%F150;","%F151;","%F152;","%F153;","%F154;","%F155;","%F156;","%F157;","%F158;","%F159;",
		"%F160;","%F161;","%F162;","%F163;","%F164;","%F165;","%F166;","%F167;","%F168;","%F169;","%F170;","%F171;","%F172;","%F173;","%F174;","%F175;","%F176;","%H300;","%H301;");
	
	fm_search = new Array("±","ê","æ","ê","³","ñ","ó","¶","¿","¼","¡","Ê","Æ","Ê","£","Ñ","Ó","¦","¯","¬","ý","Ï","ö","ï","í",
		"¢","¤","¥","§","¨","©","ª","«","®","°","²","´","µ","·","¸","¹","º","»","½","¾",
		"À","Á","Â","Ã","Ä","Å","Ç","È","É","Ë","Ì","Í","Î","Ï","Ð","Ò","Ô","Õ","Ö","×",
		"Ø","Ù","Ú","Û","Ü","Ý","Þ","ß","à","á","â","ã","ä","å","ç","è","é","ë","ì","í",
		"î","ï","ð","ò","ô","õ","ö","÷","ø","ù","ú","û","ü","ý","þ","ÿ","&","<b>","</b>");

	str_new = str_replace(fm_search, fm_replace, str_to);//str.replace(/;F15;/g, "ó±êæ³ó¿¼");
	return str_new;
	/*return str;*/
}

function str_replace(search, replace, subject, count) {
    // Replaces all occurrences of search in haystack with replace  
    // 
    // version: 905.3122
    var i = 0, j = 0, temp = '', repl = '', sl = 0, fl = 0,
            f = [].concat(search),
            r = [].concat(replace),
            s = subject,
            ra = r instanceof Array, sa = s instanceof Array;
    s = [].concat(s);
    if (count) {
        this.window[count] = 0;
    }

    for (i=0, sl=s.length; i < sl; i++) {
        if (s[i] === '') {
            continue;
        }
        for (j=0, fl=f.length; j < fl; j++) {
            temp = s[i]+'';
            repl = ra ? (r[j] !== undefined ? r[j] : '') : r[0];
            s[i] = (temp).split(f[j]).join(repl);
            if (count && s[i] !== temp) {
                this.window[count] += (temp.length-s[i].length)/f[j].length;}
        }
    }
    return sa ? s : s[0];
}
