var tal_code_tbl = Array(
	'10', '12', '13', '14', '15', 
	'21', '22', '23', '24', '25', 
	'31', '32', '33', '34', '35',
	'41', '42', '43', '44', '45',
	'51', '52', '53', '54', '55');

//alert(String.fromCharCode(65+tal_code_tbl.length));
//////////////////////////////////////////////////////////////////////////
function MyTalDecode(s) {

	s = s.replace(/x/g, '00000000000000000000', s);
	s = s.replace(/j/g, '00000000000', s);
	s = s.replace(/i/g, '0000000000', s);
	s = s.replace(/h/g, '000000000', s);
	s = s.replace(/g/g, '00000000', s);
	s = s.replace(/f/g, '0000000', s);
	s = s.replace(/e/g, '000000', s);
	s = s.replace(/d/g, '00000', s);
	s = s.replace(/c/g, '0000', s);
	s = s.replace(/b/g, '000', s);
	s = s.replace(/a/g, '00', s);

	s = s.replace(/m/g, '1111', s);
	s = s.replace(/l/g, '111', s);
	s = s.replace(/k/g, '11', s);

	s = s.replace(/o/g, '1010', s);
	s = s.replace(/n/g, '101', s);

	s = s.replace(/p/g, '222', s);
	s = s.replace(/r/g, '333', s);
	s = s.replace(/s/g, '444', s);

	s = s.replace(/t/g, '05', s);
	s = s.replace(/u/g, '50', s);
	s = s.replace(/v/g, '01', s);
	s = s.replace(/w/g, '10', s);
	
	for (i=0; i<tal_code_tbl.length; i++) {
		c = String.fromCharCode(65+i);
		s = s.replace(new RegExp(c, 'g'), tal_code_tbl[i]);
	}

//	document.write(s);

	return s;

}
//////////////////////////////////////////////////////////////////////////
function MyTalEncode(s) {

	s = s.replace(/00000000000000000000/g, 'x', s);
	s = s.replace(/00000000000/g, 'j', s);
	s = s.replace(/0000000000/g, 'i', s);
	s = s.replace(/000000000/g, 'h', s);
	s = s.replace(/00000000/g, 'g', s);
	s = s.replace(/0000000/g, 'f', s);
	s = s.replace(/000000/g, 'e', s);
	s = s.replace(/00000/g, 'd', s);
	s = s.replace(/0000/g, 'c', s);
	s = s.replace(/000/g, 'b', s);
	s = s.replace(/00/g, 'a', s);

	s = s.replace(/1111/g, 'm', s);
	s = s.replace(/111/g, 'l', s);
	s = s.replace(/11/g, 'k', s);

	s = s.replace(/1010/g, 'o', s);
	s = s.replace(/101/g, 'n', s);

	s = s.replace(/222/g, 'p', s);
	s = s.replace(/333/g, 'r', s);
	s = s.replace(/444/g, 's', s);

	s = s.replace(/05/g, 't', s);
	s = s.replace(/50/g, 'u', s);
	s = s.replace(/01/g, 'v', s);
	s = s.replace(/10/g, 'w', s);

	for (i=0; i<tal_code_tbl.length; i++) {
		c = String.fromCharCode(65+i);
		s = s.replace(new RegExp(tal_code_tbl[i], 'g'), c);
	}

	return s;

}
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////


