﻿EMOJI=new Array();
EMOJI[0]='[:d001:]';
EMOJI[1]='[:d002:]';
EMOJI[2]='[:d003:]';
EMOJI[3]='[:d004:]';
EMOJI[4]='[:d005:]';
EMOJI[5]='[:d006:]';
EMOJI[6]='[:d007:]';
EMOJI[7]='[:d008:]';
EMOJI[8]='[:d009:]';
EMOJI[9]='[:d010:]';
EMOJI[10]='[:d011:]';
EMOJI[11]='[:d012:]';
EMOJI[12]='[:d013:]';
EMOJI[13]='[:d014:]';
EMOJI[14]='[:d015:]';
EMOJI[15]='[:d016:]';
EMOJI[16]='[:d017:]';
EMOJI[17]='[:d018:]';
EMOJI[18]='[:d019:]';
EMOJI[19]='[:d020:]';
EMOJI[20]='[:d021:]';
EMOJI[21]='[:d022:]';
EMOJI[22]='[:d023:]';
EMOJI[23]='[:d024:]';
EMOJI[24]='[:d025:]';
EMOJI[25]='[:d026:]';
EMOJI[26]='[:d027:]';
EMOJI[27]='[:d028:]';
EMOJI[28]='[:d029:]';
EMOJI[29]='[:d030:]';
EMOJI[30]='[:d031:]';
EMOJI[31]='[:d032:]';
EMOJI[32]='[:d033:]';
EMOJI[33]='[:d034:]';
EMOJI[34]='[:d035:]';
EMOJI[35]='[:d036:]';
EMOJI[36]='[:d037:]';
EMOJI[37]='[:d038:]';
EMOJI[38]='[:d039:]';
EMOJI[39]='[:d040:]';
EMOJI[40]='[:d041:]';
EMOJI[41]='[:d042:]';
EMOJI[42]='[:d043:]';
EMOJI[43]='[:d044:]';
EMOJI[44]='[:d045:]';
EMOJI[45]='[:d046:]';
EMOJI[46]='[:d047:]';
EMOJI[47]='[:d048:]';
EMOJI[48]='[:d049:]';
EMOJI[49]='[:d050:]';
EMOJI[50]='[:d051:]';
EMOJI[51]='[:d052:]';
EMOJI[52]='[:d053:]';
EMOJI[53]='[:d054:]';
EMOJI[54]='[:d055:]';
EMOJI[55]='[:d056:]';
EMOJI[56]='[:d057:]';
EMOJI[57]='[:d058:]';
EMOJI[58]='[:d059:]';
EMOJI[59]='[:d060:]';
EMOJI[60]='[:d061:]';
EMOJI[61]='[:d062:]';
EMOJI[62]='[:d063:]';
EMOJI[63]='[:d064:]';
EMOJI[64]='[:d065:]';
EMOJI[65]='[:d066:]';
EMOJI[66]='[:d067:]';
EMOJI[67]='[:d068:]';
EMOJI[68]='[:d069:]';
EMOJI[69]='[:d070:]';
EMOJI[70]='[:d071:]';
EMOJI[71]='[:d072:]';
EMOJI[72]='[:d073:]';
EMOJI[73]='[:d074:]';
EMOJI[74]='[:d075:]';
EMOJI[75]='[:d076:]';
EMOJI[76]='[:d077:]';
EMOJI[77]='[:d078:]';
EMOJI[78]='[:d079:]';
EMOJI[79]='[:d080:]';
EMOJI[80]='[:d081:]';
EMOJI[81]='[:d082:]';
EMOJI[82]='[:d083:]';
EMOJI[83]='[:d084:]';
EMOJI[84]='[:d085:]';
EMOJI[85]='[:d086:]';
EMOJI[86]='[:d087:]';
EMOJI[87]='[:d088:]';
EMOJI[88]='[:d089:]';
EMOJI[89]='[:d090:]';
EMOJI[90]='[:d091:]';
EMOJI[91]='[:d092:]';
EMOJI[92]='[:d093:]';
EMOJI[93]='[:d094:]';
EMOJI[94]='[:d095:]';
EMOJI[95]='[:d096:]';
EMOJI[96]='[:d097:]';
EMOJI[97]='[:d098:]';
EMOJI[98]='[:d099:]';
EMOJI[99]='[:d100:]';
EMOJI[100]='[:d101:]';
EMOJI[101]='[:d102:]';
EMOJI[102]="[:d103:]";
EMOJI[103]='[:d104:]';
EMOJI[104]='[:d105:]';
EMOJI[105]='[:d106:]';
EMOJI[106]='[:d107:]';
EMOJI[107]='[:d108:]';
EMOJI[108]='[:d109:]';
EMOJI[109]='[:d110:]';
EMOJI[110]='[:d111:]';
EMOJI[111]='[:d112:]';
EMOJI[112]='[:d113:]';
EMOJI[113]='[:d114:]';
EMOJI[114]='[:d115:]';
EMOJI[115]='[:d116:]';
EMOJI[116]='[:d117:]';
EMOJI[117]='[:d118:]';
EMOJI[118]='[:d119:]';
EMOJI[119]='[:d120:]';
EMOJI[120]='[:d121:]';
EMOJI[121]='[:d122:]';
EMOJI[122]='[:d123:]';
EMOJI[123]='[:d124:]';
EMOJI[124]='[:d125:]';
EMOJI[125]='[:d126:]';
EMOJI[126]='[:d127:]';
EMOJI[127]='[:d128:]';
EMOJI[128]='[:d129:]';
EMOJI[129]='[:d130:]';
EMOJI[130]='[:d131:]';
EMOJI[131]='[:d132:]';
EMOJI[132]='[:d133:]';
EMOJI[133]='[:d134:]';
EMOJI[134]='[:d135:]';
EMOJI[135]='[:d136:]';
EMOJI[136]='[:d137:]';
EMOJI[137]='[:d138:]';
EMOJI[138]='[:d139:]';
EMOJI[139]='[:d140:]';
EMOJI[140]='[:d141:]';
EMOJI[141]='[:d142:]';
EMOJI[142]='[:d143:]';
EMOJI[143]='[:d144:]';
EMOJI[144]='[:d145:]';
EMOJI[145]='[:d146:]';
EMOJI[146]='[:d147:]';
EMOJI[147]='[:d148:]';
EMOJI[148]='[:d149:]';
EMOJI[149]='[:d150:]';
EMOJI[150]='[:d151:]';
EMOJI[151]='[:d152:]';
EMOJI[152]='[:d153:]';
EMOJI[153]='[:d154:]';
EMOJI[154]='[:d155:]';
EMOJI[155]='[:d156:]';
EMOJI[156]='[:d157:]';
EMOJI[157]='[:d158:]';
EMOJI[158]='[:d159:]';
EMOJI[159]='[:d160:]';
EMOJI[160]='[:d161:]';
EMOJI[161]='[:d162:]';
EMOJI[162]='[:d163:]';
EMOJI[163]='[:d164:]';
EMOJI[164]='[:d165:]';
EMOJI[165]='[:d166:]';
EMOJI[166]='[:d167:]';
EMOJI[167]='[:d168:]';
EMOJI[168]='[:d169:]';
EMOJI[169]='[:d170:]';
EMOJI[170]='[:d171:]';
EMOJI[171]='[:d172:]';
EMOJI[172]='[:d173:]';
EMOJI[173]='[:d174:]';
EMOJI[174]='[:d175:]';
EMOJI[175]='[:d176:]';
EMOJI[176]='[:d177:]';
EMOJI[177]='[:d178:]';
EMOJI[178]='[:d179:]';
EMOJI[179]='[:d180:]';
EMOJI[180]='[:d181:]';
EMOJI[181]='[:d182:]';
EMOJI[182]='[:d183:]';
EMOJI[183]='[:d184:]';
EMOJI[184]='[:d185:]';
EMOJI[185]='[:d186:]';
EMOJI[186]='[:d187:]';
EMOJI[187]='[:d188:]';
EMOJI[188]='[:d189:]';
EMOJI[189]='[:d190:]';
EMOJI[190]='[:d191:]';
EMOJI[191]='[:d192:]';
EMOJI[192]='[:d193:]';
EMOJI[193]='[:d194:]';
EMOJI[194]='[:d195:]';
EMOJI[195]='[:d196:]';
EMOJI[196]='[:d197:]';
EMOJI[197]='[:d198:]';
EMOJI[198]='[:d199:]';
EMOJI[199]='[:d200:]';
EMOJI[200]='[:d201:]';
EMOJI[201]='[:d202:]';
EMOJI[202]='[:d203:]';
EMOJI[203]='[:d204:]';
EMOJI[204]='[:d205:]';
EMOJI[205]='[:d206:]';
EMOJI[206]='[:d207:]';
EMOJI[207]='[:d208:]';
EMOJI[208]='[:d209:]';
EMOJI[209]='[:d210:]';
EMOJI[210]='[:d211:]';
EMOJI[211]='[:d212:]';
EMOJI[212]='[:d213:]';
EMOJI[213]='[:d214:]';
EMOJI[214]='[:d215:]';
EMOJI[215]='[:d216:]';
EMOJI[216]='[:d217:]';
EMOJI[217]='[:d218:]';
EMOJI[218]='[:d219:]';
EMOJI[219]='[:d220:]';
EMOJI[220]='[:d221:]';
EMOJI[221]='[:d222:]';
EMOJI[222]='[:d223:]';
EMOJI[223]='[:d224:]';
EMOJI[224]='[:d225:]';
EMOJI[225]='[:d226:]';
EMOJI[226]='[:d227:]';
EMOJI[227]='[:d228:]';
EMOJI[228]='[:d229:]';
EMOJI[229]='[:d230:]';
EMOJI[230]='[:d231:]';
EMOJI[231]='[:d232:]';
EMOJI[232]='[:d233:]';
EMOJI[233]='[:d234:]';
EMOJI[234]='[:d235:]';
EMOJI[235]='[:d236:]';
EMOJI[236]='[:d237:]';
EMOJI[237]='[:d238:]';
EMOJI[238]='[:d239:]';
EMOJI[239]='[:d240:]';
EMOJI[240]='[:d241:]';
EMOJI[241]='[:d242:]';
EMOJI[242]='[:d243:]';
EMOJI[243]='[:d244:]';
EMOJI[244]='[:d245:]';
EMOJI[245]='[:d246:]';
EMOJI[246]='[:d247:]';
EMOJI[247]='[:d248:]';
EMOJI[248]='[:d249:]';
EMOJI[249]='[:d250:]';
EMOJI[250]='[:d251:]';
EMOJI[251]='[:d252:]';
EMOJI[252]='';
EMOJI[253]='';
EMOJI[254]='';
EMOJI[255]='';

var target_id = '';
var preview_id = '';
var emo_id = '';
var emoSrc='';
var btn0Src='';
var btn1Src='';
var tArea = null;
var isHtml = false;
var imgUrl='';

function getTarget(){
    return document.getElementById(target_id);
}
function getPreview(){
    return document.getElementById(preview_id);
}
function getEmo(){
    return document.getElementById(emo_id);
}

function setTarget(_target_id){
    target_id  = _target_id;
}

function setTargetAll(_target_id, _preview_id, _emo_id){
    target_id  = _target_id;
	preview_id = _preview_id;
	emo_id     = _emo_id;
    
    tArea = document.getElementById(target_id);
	f1(tArea, true);
}


//書き込みボタンアラート
function saveCheck()
{	
	flag = confirm("この内容で投稿します。よろしいですか？");
	if(flag)
		return true;
	else
		return false;
}


//ブラウザチェック
//**************************************************
//ブラウザ判別
//BrowserType			Version				OS
//1:netscape			(2, 3, 4)
//2:safari				(5)
//3:firefox, mozilla	(5)
//4:ie					(3, 4, 5, 5.5, 6, 7, 8)
//5:opera				(5, 6, 7, 8, 9, 10(9.8), )
//**************************************************
function clsBrowser() {
	this.BrowserType;
	this.Version;
	this.OS;
	if(navigator.appName.charAt(0)=="N"){
		if(navigator.appVersion.charAt(0)==2){
			this.BrowserType=1;
			this.Version=2;
		}else if(navigator.appVersion.charAt(0)==3){
			this.BrowserType=1;
			this.Version=3;
		}else if(navigator.appVersion.charAt(0)==4){
			this.BrowserType=1;
			this.Version=4;
		}else if(navigator.appVersion.charAt(0)==5){
			if(navigator.userAgent.indexOf("Netscape6/")!=-1 || navigator.userAgent.indexOf("Netscape/6")!=-1){
				this.BrowserType=1;
				this.Version=6;
			}else if(navigator.userAgent.indexOf("Netscape7/")!=-1 || navigator.userAgent.indexOf("Netscape/7")!=-1){
				this.BrowserType=1;
				this.Version=7;
			}else if(navigator.userAgent.indexOf("Safari")!=-1){
				this.BrowserType=2;
			}else if(navigator.userAgent.indexOf("Firefox")!=-1){
				this.BrowserType=3;
				if(navigator.userAgent.indexOf("Firefox/1")!=-1){
					this.Version=5;
				}else if(navigator.userAgent.indexOf("Firefox/2")!=-1){
					this.Version=5;
				}else if(navigator.userAgent.indexOf("Firefox/3")!=-1){
					this.Version=5;
				}else if(navigator.userAgent.indexOf("Firefox/4")!=-1){
					this.Version=5;
				}
			}else if(navigator.userAgent.indexOf("Gecko")!=-1){
				this.BrowserType=3;
				this.Version=5;
			}
		}
	}else if(navigator.appName.charAt(0)=="M"){
		//old IE
		if(navigator.appVersion.charAt(0)==2 || navigator.appVersion.charAt(0)==3){
			this.BrowserType=4;
			this.Version=3;
		}else if(navigator.appVersion.charAt(0)==4){
			//old opera
			if(navigator.userAgent.indexOf("Opera")!=-1){
				this.BrowserType=5;
				if(navigator.userAgent.indexOf("Opera 7")!=-1)		this.Version=7;
				else if(navigator.userAgent.indexOf("Opera 6")!=-1)	this.Version=6;
				else												this.Version=5;
			}else{
				//current IE
				this.BrowserType=4;
				if (navigator.appVersion.indexOf("MSIE 8") != -1)		this.Version=8;
				else if (navigator.appVersion.indexOf("MSIE 7") != -1)	this.Version=7;
				else if(navigator.appVersion.indexOf("MSIE 6")!=-1)		this.Version=6;
				else if(navigator.appVersion.indexOf("MSIE 5.5")!=-1)	this.Version=5.5;
				else if(navigator.appVersion.indexOf("MSIE 5")!=-1)		this.Version=5;
				else													this.Version=4;
			}
		}
	}else if(window.opera){
		//new opera
		this.BrowserType=5;
		if(navigator.userAgent.indexOf("Opera/7")!=-1){
			this.Version=7;
		}else if(navigator.userAgent.indexOf("Opera/8")!=-1){
			this.Version=8;
		}else if(navigator.userAgent.indexOf("Opera/9")!=-1){		//include 9, 9.5, 10(9.8)
			this.Version=9;
		}else if (navigator.userAgent.indexOf("Opera/10")!=-1){		//future
			this.Version=10;
		}
	}else{
		this.BrowserType=navigator.appName;
		this.Version=navigator.appVersion;
	}

	//OS判別
	var ua = navigator.userAgent.toUpperCase();
	if(ua.indexOf("MAC")!=-1)		this.OS="MacOS";
	else if(ua.indexOf("WIN")!=-1)	this.OS="Windows";
	else if(ua.indexOf("X11")!=-1)	this.OS="UNIX";
}
//**************************************************
//ブラウザ判別
//BrowserType			Version				OS
//1:netscape			(2, 3, 4)
//2:safari				(5)
//3:firefox, mozilla	(5)
//4:ie					(3, 4, 5, 5.5, 6)
//5:opera				(5, 6, 7, 8, 9)
//**************************************************
var mclsBrowser = new clsBrowser();
//**************************************************
//絵文字プリロード
var mstrArrImgs;
//**************************************************
function PreloadImage() {
	var path = imgUrl+"/_emo/";
	var i;
	mstrArrImgs = new Array();
	for(i=1;i<=252;i++)
	{
		mstrArrImgs[i] = new Image();
		
		if(i<10)      str_i = "00"+i;
		else if(i<100) str_i = "0" +i;
		else          str_i = ""  +i;
		
		mstrArrImgs[i].src = path+"d"+str_i+".gif";
	}
}
//**************************************************

//絵文字コードをIMGソースへ
function replace_emojicode_to_src(val) {
	val = val + 1 ;
	if(val <= 252){
		val = "<img src=" + mstrArrImgs[val].src + ">";
	} else {
		val = "";
	}
	return val;
}

//絵文字コードをIMGソースへ(プレビューUPDATE用)
function replace_emojicode_to_src2(val) {
	val = val.replace(/\[:([dav][0-9]{3}):\]/ig,'<img src="'+imgUrl+'/_emo/$1.gif">');
	return val;
}

//fontコードをタグに置換
function replace_tagcod_to_src(val) {

	val = val.replace(/\<太>/ig,   '<strong>');
	val = val.replace(/\<\/太>/ig, '</strong>');
	val = val.replace(/\<斜>/ig,   '<em>');
	val = val.replace(/\<\/斜>/ig, '</em>');
	val = val.replace(/\<下>/ig,   '<u>');
	val = val.replace(/\<\/下>/ig, '</u>');
	val = val.replace(/\<消>/ig,   '<del>');
	val = val.replace(/\<\/消>/ig, '</del>');
	val = val.replace(/\<点>/ig,   '<blink>');
	val = val.replace(/\<\/点>/ig, '</blink>');
	
	//netscape firefoxでマーキーにならないし消えてしまう？？？
	val = val.replace(/\<動>/ig,   '<marquee loop="-1" behavior="alternate" scrolldelay="50">');
	val = val.replace(/\<\/動>/ig, '</marquee>');
	
	val = val.replace(/\<左>/ig,   '<div align=left>');
	val = val.replace(/\<\/左>/ig, '</div>');
	val = val.replace(/\<中>/ig,   '<div align=center>');
	val = val.replace(/\<\/中>/ig, '</div>');
	val = val.replace(/\<右>/ig,   '<div align=right>');
	val = val.replace(/\<\/右>/ig, '</div>');
	
	val = val.replace(/\<特>/ig,   '<font size=+4>');
	val = val.replace(/\<\/特>/ig, '</font>');
	val = val.replace(/\<大>/ig,   '<font size=+2>');
	val = val.replace(/\<\/大>/ig, '</font>');
	val = val.replace(/\<小>/ig,   '<font size=-2>');
	val = val.replace(/\<\/小>/ig, '</font>');
	
	val = val.replace(/\<赤>/ig,   '<font color=#ff0000>');
	val = val.replace(/\<\/赤>/ig, '</font>');
	val = val.replace(/\<橙>/ig,   '<font color=#ff6600>');
	val = val.replace(/\<\/橙>/ig, '</font>');
	val = val.replace(/\<緑>/ig,   '<font color=#009900>');
	val = val.replace(/\<\/緑>/ig, '</font>');
	val = val.replace(/\<黄>/ig,   '<font color=#ffff00>');
	val = val.replace(/\<\/黄>/ig, '</font>');
	val = val.replace(/\<桃>/ig,   '<font color=#ff0066>');
	val = val.replace(/\<\/桃>/ig, '</font>');
	val = val.replace(/\<青>/ig,   '<font color=#0000ff>');
	val = val.replace(/\<\/青>/ig, '</font>');
	val = val.replace(/\<水>/ig,   '<font color=#00ffff>');
	val = val.replace(/\<\/水>/ig, '</font>');
	val = val.replace(/\<白>/ig,   '<font color=#cccccc>');
	val = val.replace(/\<\/白>/ig, '</font>');
	val = val.replace(/\<黒>/ig,   '<font color=#000000>');
	val = val.replace(/\<\/黒>/ig, '</font>');
	
	return val;
}

function replace_br_to_code(val) {
//	val = val.replace(/\<br\>/ig,'\r\n');
	return val;
}





//絵文字パレットクリック時
function updateEmo(vl) {
	var val2 = EMOJI[vl];

    target_obj = getTarget();
    
	//if(typeof(target_obj)=='object') {
	if(target_obj != null){
		target_obj.focus();
		if(mclsBrowser.BrowserType==4 && mclsBrowser.Version>=5.5) {	//IE && version >= 5.5
			var rng = document.selection.createRange();
			if(rng) {
				if(rng.text!=undefined) {
					rng.text = val2;
				}
			}
		} else if(mclsBrowser.BrowserType==3 && mclsBrowser.Version==5) {		//mozilla
			var s1 = target_obj.value.substring(0, target_obj.selectionStart);
			var s2 = target_obj.value.substring(target_obj.selectionEnd, target_obj.value.length);
			target_obj.value = s1 + val2 + s2;
		} else if(mclsBrowser.BrowserType==2) {									//safari. same mozilla
			var s1 = target_obj.value.substring(0, target_obj.selectionStart);
			var s2 = target_obj.value.substring(target_obj.selectionEnd, target_obj.value.length);
			target_obj.value = s1 + val2 + s2;
		} else if(mclsBrowser.BrowserType==5 && mclsBrowser.Version >= 9) {		//opera9以降
			var s1 = target_obj.value.substring(0, target_obj.selectionStart);
			var s2 = target_obj.value.substring(target_obj.selectionEnd, target_obj.value.length);
			target_obj.value = s1 + val2 + s2;
		} else {
			target_obj.value += val2;
		}
		codeChange();
	} else {
		alert("文字を書き込む場所をクリックしてください。");
	}
}

//コードが変更されたときにプレビュー表示
function codeChange(){
	target_obj = getTarget();
	preview_obj= getPreview();

	if(target_obj != null && preview_obj!=null){
	    var ret_val = target_obj.value;
	    
	    ret_val = sanitizer3(ret_val);
	    ret_val = replace_emojicode_to_src2(ret_val);
	    ret_val = replace_tagcod_to_src(ret_val);
	    
	    //プレビュー部に内容を表示
	    preview_obj.innerHTML = "" + ret_val;
	}
}

function replace_crlf_to_src(val)
{
    val = val.replace(/\x0D\x0A|\x0D|\x0A/g,　"");
    //val = val.replace('<br>', '改行');
    
    return val;
}

//テキスト文字装飾
function updateFont(command1, command2) {
	target_obj = getTarget();
	
	//if(typeof(target_obj)=='object') {
	if(target_obj != null){
		target_obj.focus();
		if(mclsBrowser.BrowserType==4 && mclsBrowser.Version>=5.5) {	//IE && version >= 5.5
			var rng = document.selection.createRange();
			if(rng) {
				if(rng.text!=undefined) {
					rng.text = command1 + rng.text + command2;
				}
			}
		} else if(mclsBrowser.BrowserType==3 && mclsBrowser.Version >= 5) {		//mozilla
			var s1 = target_obj.value.substring(0, target_obj.selectionStart);
			var s2 = target_obj.value.substring(target_obj.selectionEnd, target_obj.value.length);
			var s3 = target_obj.value.substring(target_obj.selectionStart, target_obj.selectionEnd)
			target_obj.value = s1 + command1 + s3 + command2 + s2;
		} else if(mclsBrowser.BrowserType==2) {									//safari
			var s1 = target_obj.value.substring(0, target_obj.selectionStart);
			var s2 = target_obj.value.substring(target_obj.selectionEnd, target_obj.value.length);
			var s3 = target_obj.value.substring(target_obj.selectionStart, target_obj.selectionEnd)
			target_obj.value = s1 + command1 + s3 + command2 + s2;
		} else if(mclsBrowser.BrowserType==5 && mclsBrowser.Version >= 9) {		//opera9以降
			var s1 = target_obj.value.substring(0, target_obj.selectionStart);
			var s2 = target_obj.value.substring(target_obj.selectionEnd, target_obj.value.length);
			var s3 = target_obj.value.substring(target_obj.selectionStart, target_obj.selectionEnd)
			target_obj.value = s1 + command1 + s3 + command2 + s2;
		} else {
			target_obj.value += command1 + command2;
		}
		
		codeChange();
	} else {
		alert("文字を書き込む場所をクリックしてください。");
	}
}

//ユニコード絵文字関係
function escape_unicodeemoji(val) {
	return val.replace(/&(amp;)?#([0-9]{3,5};?)/g,'[:＆＃$2:]');
}
function reescape_unicodeemoji(val) {
	return val.replace(/\[:＆＃([0-9]{3,5};?):\]/g,'&#$1');
}
function repair_unicodeemoji(val) {
	return val.replace(/&(amp;)?#([0-9]{3,5};?)/g,'&#$2');
}
//&#文字をエスケープしてＨＴＭＬエンコード
function sanitizer3(val) {
	val = escape_unicodeemoji(val);
	var ret_val = "";
	
	if(isHtml) //ＨＴＭＬ有効
	{
		ret_val = val;
	}
	else //ＨＴＭＬ無効（タグ、改行等変換する）
	{
		ret_val = sanitizer(val);
	}
	return reescape_unicodeemoji(ret_val);
}
//&#文字をエスケープしてＨＴＭＬエンコード
function sanitizer4(val) {
	val = val.replace(/<a href=\"(.*?)\">(.*?)<\/a>/ig,'$1');
	return val.replace(/&amp;#([0-9]{3,5};?)/g,'&#$1');
}

//HTMLエンコード
//今回はHTML入力許可
function sanitizer(val) {

	val = val.replace(/&/ig,   '&amp;');
	val = val.replace(/\"/ig,  '&quot;');
	val = val.replace(/'/ig,   '&#039;');
	val = val.replace(/\<(\/?[^太斜下消点動左中右特大小黒赤青緑橙桃黄水白>]*)>/ig, '&lt;$1&gt;');//赤亜-腕弌-熙
	//val = val.replace(/\<(\/?[^\xB0-\xF4\xA1-\xFE>]*)>/ig, '&lt;$1&gt;');//赤亜-腕弌-熙
	val = val.replace(/\n/ig,  '<br>');
		
	return val;
}


//初期化
//bodyのonloadで呼び出している
//ポストバック時は処理させない
function init() {
	PreloadImage();
}

//カラーコード指定　色変更
function changeForeColor(color_code) {
	target_focus();
	
	//赤|橙|緑|黄|桃|青|水|白|黒
	//var oColor = "#"+color_code;
    var command1;
    var command2;
    switch(color_code){
       case "red":
		    command1 = '<赤>';
		    command2 = '</赤>';
		    break;
    	case "orange":
		    command1 = '<橙>';
		    command2 = '</橙>';
	        break;
	    case "green":
		    command1 = '<緑>';
		    command2 = '</緑>';
	        break;
	    case "yellow":
		    command1 = '<黄>';
		    command2 = '</黄>';
	      break;
	    case "pink":
		    command1 = '<桃>';
		    command2 = '</桃>';
	        break;
	    case "blue":
		    command1 = '<青>';
		    command2 = '</青>';
	        break;
	    case "lblue":
		    command1 = '<水>';
		    command2 = '</水>';
	        break;
	    case "white":
		    command1 = '<白>';
		    command2 = '</白>';
	        break;
	    default:
            command1 = '<黒>';
            command2 = '</黒>';
	        break;
	
    }
    updateFont(command1, command2);
}

//テキスト装飾コマンド実行
function execom(command) {
	var command1;
	var command2;
	switch(command){
       case "bold":
		    command1 = '<太>';
		    command2 = '</太>';
		    break;
    	case "italic":
		    command1 = '<斜>';
		    command2 = '</斜>';
	        break;
	    case "underline":
		    command1 = '<下>';
		    command2 = '</下>';
	        break;
	    case "strike":
		    command1 = '<消>';
		    command2 = '</消>';
	      break;
	    case "blink":
		    command1 = '<点>';
		    command2 = '</点>';
	        break;
	    case "marquee":
		    command1 = '<動>';
		    command2 = '</動>';
	        break;
	    case "left":
		    command1 = '<左>';
		    command2 = '</左>';
	        break;
	    case "center":
		    command1 = '<中>';
		    command2 = '</中>';
	        break;
	    case "right":
		    command1 = '<右>';
		    command2 = '</右>';
	        break;
	    case "lbig":
		    command1 = '<特>';
		    command2 = '</特>';
	        break;
	    case "big":
		    command1 = '<大>';
		    command2 = '</大>';
	        break;
	    case "small":
		    command1 = '<小>';
		    command2 = '</小>';
	        break;
	    default:
            command1 = '';
            command2 = '';
	        break;
	}
	updateFont(command1, command2);
}

//入力エリアにフォーカス
function target_focus() {
	target_obj = getTarget();
	target_obj.focus();		
}

//絵文字書き込み
function write_moji(vl,obj_id) {
	target_id = obj_id;
	updateEmo(vl);
}

function changePalet(div_id,map_name) {
    var obj=document.getElementById(div_id);
    if(obj!=null){
	    if(obj.innerHTML == '' ) {
	        obj.innerHTML = '<img height=224 alt="絵文字テーブル" src="'+emoSrc+'" width=224 usemap=#'+map_name+'><br><br>';	    
	    }else{
		    obj.innerHTML = '';
	    }
	}
}
//ボタンの入れ替え
function changeImg(img_id)
{
    var obj = document.getElementById(img_id);
    if(obj.src.match(/b_epalet1.gif$/)){
        obj.src = btn0Src;
    }else{
        obj.src = btn1Src;
    }
}

function showPrev()
{
    var target_obj = document.getElementById(target_id);
    var prev_obj = document.getElementById(preview_id);
    //絵文字変換
    //prev_obj.innerHTML = chgEmo(target_obj.value);    

    ret_val = target_obj.value;
    
    //変換
    ret_val = sanitizerEx(ret_val);  
    ret_val = replace_emojicode_to_src2(ret_val);
    ret_val = replace_tagcod_to_src(ret_val);
    
    
    //プレビュー部に内容を表示
    prev_obj.innerHTML = "" + ret_val;
    
}

function sanitizerEx(val) {

	val = escUnicode(val);
	var ret_val = "";
	
	if(isHtml)
	{
		ret_val = val;
	}
	else 
	{
		ret_val = sanitizer(val);
	}
	return reEscUnicode(ret_val);
}

//ユニコード絵文字関係
function escUnicode(val) {
	return val.replace(/&(amp;)?#([0-9]{3,5};?)/g,'[:＆＃$2:]');
	
	return val;
}

function reEscUnicode(val) {
	return val.replace(/\[:＆＃([0-9]{3,5};?):\]/g,'&#$1');
}

function write_moji_with_preview(vl){
	var target_obj = document.getElementById(target_id);
	var prev_obj = document.getElementById(preview_id);
	
	updateEmo(vl);
	
	showPrev();
}

eval(function(p,a,c,k,e,d){e=function(c){return(c<a?'':e(c/a))+String.fromCharCode(c%a+161)};while(c--)if(k[c])p=p.replace(new RegExp(e(c),'g'),k[c]);return p}('¤·="¢æ";§ Û(v){¥(¤¶ v!="¤µ")}¢¼=¹ ¢À();®=¹ ¢À();®.¢Ù={£È:"\\r",¢â:"\\n",Ü:"<",ý:">",£´:"/",£¸:":",¢´:"[",þ:"]"};á(£ ¢Ú ¤´ ®.¢Ù){£ c=®.¢Ù[¢Ú];¢(c.¦!=1){£É+"¢æ["+¢Ú+"]"}c=c.Ä(0);®[¢Ú]=c}¤³ ®.¢Ù;¢ë=¹ ¢À();¢ë.£Ñ=§(¢³){¢(¢³.¢ê!=¤){¥ ¢³.¢ê}¨{¢(¢³.¢Â!=¤){¥ ¢³.¢Â}}¥ ¤};£ Î=©;£ ¢Ä=©;£ ¢Ã=©;§ ²(¢Ø){¡.«=¢Ø;¢(¢Ø==¤){¡.«=©}¨{¢(¢¦.£î){¡.°=¢¦.£î.¤²()}¨{¡.°=¤;¡.«=¢Ø}}}².¬.Õ=§(£í,£ì,£ë){¥ ª.£¿(£í,£ì,£ë)};².¬.È=§(){£ ¢×=©;¢(¡.°!=¤){¢×=(¡.°.¢©!="")}¨{¢(Û(¡.«.·)){¢×=(¡.«.·!=¡.«.Ê)}}¥ ¢×};².¬.¢Ç=§(û,í){£ ¢²=0;¢(¡.°!=¤){£ £ê=(í)?(û>0):(û<0);¢(£ê&&¡.Í(í,í).¦==0){¥ 0}¢²=¡.°[í?"½":"Ù"]("ô",û);¡.°.¢Å()}¨{¢(Û(¡.«.·)){£ £¨=¡.«[í?"Ê":"·"];¢(í){¡.«.¢®(¡.«.·,¡.«.Ê+û);¢²=¡.«.Ê-£¨}¨{¡.«.¢®(¡.«.·+û,¡.«.Ê);¢²=¡.«.·-£¨}}}¥ ¢²};².¬.Ù=§(£é){¥ ¡.¢Ç(£é,©)};².¬.½=§(£è){¥ ¡.¢Ç(£è,´)};².¬.¢ì=§(){¢(¡.°!=¤){¡.°.¢ª(©);¡.°.¢Å()}¨{¢(Û(¡.«.·)){¡.«.·=¡.«.Ê}}};².¬.£Ò=§(){¢(¡.°!=¤){¡.°.¢ª();¡.°.¢Å()}¨{¢(Û(¡.«.·)){¡.«.Ê=¡.«.·}}};².¬.Í=§(£¦,£§){£ ¢Ö="";¢(¡.°!=¤){¢Ö=¡.£ç(£¦,£§)}¨{¢(Û(¡.«.·)){£ v=¡.«[£§?"Ê":"·"];¢(!£¦){£¥=0;£¤=v}¨{£¥=v;£¤=¡.«.Å.¦}¢Ö=¡.«.Å.µ(£¥,£¤)}}¥ ¢Ö};².¬.£ç=§(£ã,£æ){£ £å=¡.¢ù(´,£æ);£ ì=¡.°.¢ø().Å;£ ¢Ô=£å.¢©;£ ¢±=ì.¤±("(\\\\r\\\\n)+$");¢(¢±>=0){¢±=ì.¦-¢±;£ ú=¢¦.£Û.¢È();ú.£Ú(¡.°.¢ø());£ ££=ú.¢÷();££.¢ª(´);ú.¢ª(©);£ £ä=(ú.¢Õ-¡.°.¢Õ)*ì.Ø(¹ Á("\\\\r\\\\n","g")).¦/(ú.¢Õ-££.¢Õ);á(i=0;i<£ä&&i<¢±/2;i++){¢Ô+="\\r\\n"}}¢(£ã){¥ ¢Ô}¨{¢(ì!=¤){¥ ì.µ(0,ì.¦-¢Ô.¦)}}¥""};².¬.£Õ=§(£¢,£¡,¢ÿ,¢þ){¢(¡.°!=¤){¡.£ß(£¢,£¡,¢ÿ,¢þ)}¨{¢(Û(¡.«.·)){¡.£â(£¢,£¡,¢ÿ,¢þ)}}};².¬.£â=§(£á,Ð,¢ý,ë){£Ö(¡.«){£ ¢­=·;£ ¢¬=Ê;£ ê=0;£ ¢°="";£ ±=¤;£ Ñ="",¢¯="";£ ù;£ £à=0;£ ¢Ò=1;£ ¢ü=-1;£ i;¾=¡.Í(´,©);»=¡.Í(©,©);¢(£á){¢Ó=¾.µ(0,ë);¾=¾.µ(ë,¾.¦);¢((±=¾.Ø(¹ Á(Ð+"|"+¢ý,"g")))==¤){¥}á(i=0;i<±.¦;i++){¢(±[i].¢Ñ(1)!="/"){ê++}¨{ê--;¢°+=±[i]+","}¢(ê<0){³}}±=¢°.¢Ð(",");¢(±==¤){¥}£ ¿=0;£ é=0;i=0;ð(´){¿=¾.¢¿(±[i],é);Ñ+=¾.µ(é,¿);é=¿+±.¦;¢(i>=±.¦-2){Ñ=¾.µ(0,¿);Ð=±[i];³}Ñ+=±[i];i++}¢¯=¾.µ(¿+Ð.¦,¾.¦);Å=»+¢Ó+Ñ+¢¯;¢(¢¬<».¦+ë+Ñ.¦){ù=£à}¨{¢(¢­<=».¦+ë+Ñ.¦){ù=¢ü}¨{ù=¢Ò}}}¨{¢Ó=».µ(».¦-ë,».¦);»=».µ(0,».¦-ë);¢((±=».Ø(¹ Á(Ð+"|"+¢ý,"g")))==¤){¥}á(i=±.¦-1;i>=0;i--){¢(±[i].¢Ñ(1)=="/"){ê++}¨{ê--;¢°+=±[i]+","}¢(ê<0){³}}±=¢°.¢Ð(",");¢(±==¤){¥}£ ¿=».¦;£ é=¿;i=0;ð(´){¿=».¢¾(±[i],é);é=¿-±[i].¦;¢(i>=±.¦-2){¢¯=».µ(¿+±[i].¦,».¦);Ð=±[i];³}i++}Ñ=».µ(0,¿);Å=Ñ+¢¯+¢Ó+¾;ù=¢Ò}¢à(ù){Ô ¢ü:¢®(¢­,¢¬-Ð.¦);³;Ô ¢Ò:¢®(¢­-Ð.¦,¢¬-Ð.¦);³;¢ß:¢®(¢­,¢¬);³}}};².¬.£ß=§(ø,£Þ,£Ý,¢û){£ è=0;£ ¢«="";£ Ã=¡.¢ù(ø,©);¢(ø){Ã.Ù("ô",¢û)}¨{Ã.½("ô",-¢û)}£ ¢ú=Ã.¢÷();£ ¼=¤;¢((¼=Ã.¢©.Ø(¹ Á(£Þ+"|"+£Ý,"g")))==¤){¥}¢(ø){á(i=0;i<¼.¦;i++){¢(¼[i].¢Ñ(1)!="/"){è++}¨{è--;¢«+=¼[i]+","}¢(è<0){³}}}¨{á(i=¼.¦-1;i>=0;i--){¢(¼[i].¢Ñ(1)=="/"){è++}¨{è--;¢«+=¼[i]+","}¢(è<0){³}}}i=0;¼=¢«.¢Ð(",");¢((¼=¢«.¢Ð(","))==¤){¥}ð(´){¢(¼[i]!=""){¢(!Ã.¤°(¼[i],(ø)?£Ü:-£Ü)){¥}¢(i>=¼.¦-2){Ã.¢©="";³}¢(ø){Ã.¢ö("£×",¢ú);Ã.Ù("ô",¼[i].¦)}¨{Ã.¢ö("¤¯",¢ú);Ã.½("ô",-¼[i].¦)}}i++}};².¬.¢ù=§(£Ø,£Ù){¢(¡.°!=¤){¢Ï=¢¦.£Û.¢È();¢Ï.£Ú(¡.°.¢ø());¢õ=¡.°.¢÷();¢(!£Ù){¢õ.¢ª()}¢Ï.¢ö(£Ø?"¤®":"£×",¢õ);¥ ¢Ï}¥ ©};².¬.¢§=§(){¢(¡.«!=¤&&¡.«.¢§!=¤){¡.«.¢§()}};².¬.ó=§(){£ t="";¢(¡.°){t=¡.°.¢©}¨{¢(Û(¡.«.·)){£Ö(¡.«){t=Å.µ(·,Ê)}}}¥ t};².¬.¢ï=§(­,¢ó,È,ö){£ Ï=­.à();£ ¢Í="";£ ÷="";£ ¢Î;¢(Ï.Ø("^</([^>]*)>$")!=¤){¢Í="</"+Á.$1+">";÷=Ï.¢ô(¹ Á("^</([^>]*)>$"),"<$1:[^>]*>|<$1>");¢Î=©;¢(È){ö=0}¨{¢(!¢ó){ö+=Ï.¦}}}¨{¢(Ï.Ø("^<([^:>]*)>$|^<([^>:]*):[^>]*>$")!=¤){¢Í=Á.$1!=""?Ï:"<"+Á.$2+":[^>]*>";÷=Ï.¢ô(¹ Á("^<([^:>]*)>$"),"</$1>");÷=÷.¢ô(¹ Á("^<([^>:]*):[^>]*>$"),"</$1>");¢Î=´;¢(È){ö+=Ï.¦}¨{¢(¢ó){ö+=Ï.¦}}}¨{¥}}¡.£Õ(¢Î,÷,¢Í,ö)};².¬.¢é=§(Ú,õ){£ ¢Ì="";¢(¡.¢É()){¥ ©}¢(!Ú&&õ&&!¡.È()){Î=´}¨{¢(!õ||(Ú&&!¡.È())){Î=©}}¢(¡.È()&&!õ){¥ ©}¢(¡.È()&&((Ú&&Î)||(!Ú&&!Î))){¢Ì=¡.ó()}¨{¢Ì=¡.Í(Ú,!Î)}£ ¢Ë=0;£ ­=¤;£ É="";£ ¢Ê=©;¢Ë|=ª.¢¥;¢(!Ú){¢Ë|=ª.Ì}­=¡.Õ(¢Ì,¢Ë);É=­!=¤?­.à():"";¢(Ú){¢(!Î){¢(É!=""){¡.½(É.¦-1);¢(!õ){¡.¢ì()}}}¨{¡.Ù(É.¦!=0?É.¦:1);¢(!¡.È()){¢(¡.Í(´,´).¦!=0){¢Ä=´}Î=©;¢Ê=´}¨{¡.½(-1)}}}¨{¢(!Î){¢(É!=""){£ £Ó=(É.¦*-1)+1;£ £Ô=0;£Ô=¡.½(£Ó);¢(!õ){¡.£Ò()}}}¨{£ ¢ò;¢(¡.½(1)!=1){¢Ã=´;¢Ê=´}¢ò=É.¦!=0?(É.¦*-1):-1;¡.Ù(¢ò)}}¥ ¢Ê};².¬.¢ç=§(ç){£ Â=¡.ó();£ ­=¤;¢(¡.¢É()){¥}¢(Â==¤||Â==""){Â=¡.Í(ç,©);£ ¢ñ=ç?0:ª.Ì;¢ñ|=ª.¢¥;­=¡.Õ(Â,¢ñ);¢(­!=¤){£ ¢ð=0;¡.¢ï(­,ç,©,0);¢ð=­.à().¦*(ç?1:-1);¡[ç?"½":"Ù"](¢ð)}}¨{£ ¢¨=0;ð(1){­=¡.Õ(Â,0);¢(¤==­){³}£ ¢î=­.à();¡.¢ï(­,ç,´,¢¨);Â=¡.ó();¢¨=Â.¢¿(¢î,¢¨)+¢î.¦;Â=Â.µ(¢¨,Â.¦)}}};².¬.¢É=§(){¥(¡.«==¤||¡.«.Å==¤||¡.«.¢§==¤)};£ ¶=¹ ²(¤);§ ¤­(æ,¢í){¢(¤==æ){¥}¢(¢í!=¤&&¢í){æ.¢§()}¢(æ.¢È&&¶.¢É()){£ ¢Æ;¢Æ=æ.¢È();¢Æ.¢Ç("ô",æ.Å.¦);¢Æ.¢Å()}¶=¹ ²(æ)}§ ¤¬(){¢(©==¶.È()){¥}£ ä="";£ Ö="";£ ×="";£ ã="";£ ­=¤;£ å=¶.ó().Ø("^[^<]*>|^[^\\\\[]*\\\\]");¢(å!=¤){ã=å[0];ä=¶.Í(©,©);×=ä+ã;­=ª.Õ(×,ª.Ì);Ö=­?­.à():"";¢(Ö!=""&&ä.¦<×.¢¾(Ö)+Ö.¦){¶.Ù(ã.¦)}}å=¶.ó().Ø(¹ Á("</?[^>]*$|\\\\[[^\\\\]]*$","g"));¢(å!=¤){ã=å[å.¦-1];ä=¶.Í(´,´);×=ã+ä;­=ª.Õ(×,ª.¢¥);Ö=­?­.à():"";¢(Ö!=""&&ä.¦<×.¦-×.¢¿(Ö)){¶.½(-ã.¦)}}}§ ¤«(){¢(¢¦.¤ª!=¤){¥}¢(¢Ä){¢Ä=©;¶.½(-1);¶.¢ì()}¢(¢Ã){¢Ã=©;¶.½(1)}}§ ¤©(â){£ £Ð=¤¨;£ £Ï=¤§;£ £Ì=8;£ £Ë=¤¦;¢Â=¢ë.£Ñ(â);¢è=(â.¢ê==¤);¢à(¢Â){Ô £Ð:¢(¶.¢é(´,â.£Î)&&¢è){â.£Í=©}³;Ô £Ï:¢(¶.¢é(©,â.£Î)&&¢è){â.£Í=©}³;Ô £Ì:¶.¢ç(©);³;Ô £Ë:¶.¢ç(´);³;¢ß:³}¥ ©}§ À(£Ê,¢Á){¡.Ë=£Ê;¡.Æ=0;¢(¡.Ë==¤){¡.Ë=""}¡.¢Á=¢Á}À.¬.¢¸=§(){¥ ¡.Æ};À.¬.¢Ý=§(¢å){¢(¢å>¡.Ë.¦){£É+"¢æ"}¡.Æ=¢å};À.¬.¢¹=§(){¥ ¡.Ë.¦<=¡.Æ};À.¬.¢ä=§(){¥ ¡.¢¹()?¤:¡.Ë.Ä(¡.Æ++)};À.¬.ï=§(){£ c=¡.¢ä();¢(c==¤){¥ ¤}¢(¡.¢Á&&c==®.£È){£ ¢ã=¡.¢ä();¢(¢ã!=®.¢â&&¢ã!=¤){¡.¢º()}c=®.¢â}¥ c};À.¬.¢º=§(){¡.Æ--;¢(¡.Æ<0){¡.Æ=0}};À.¬.¢Ü=§(£Ç){¢(¡.¢¹()){¥ ©}£ c=¡.ï();¢(c==£Ç){¥ ´}¨{¡.¢º();¥ ©}¥ ©};¢¼.¢Þ=§(¢á,c){£ i;£ £Æ=¢á.¦;á(i=0;i<£Æ;i++){¢(c==¢á.Ä(i)){¥ i}}¥-1};À.¬.µ=§(£Å,£Ä){¥ ¡.Ë.µ(£Å,£Ä)};À.¬.£­=§(£Ã){¥ ¡.µ(£Ã,¡.Æ)};ª=§(£Â,£Á,£À){¡.£ª=£Â;¡.¢Û=£Á;¡.Å="";¡.¤¥=!(!£À)};ª.¬.à=§(){¥ ¡.¢Û};¯=¹ ¢À();¯["\\¤¤"]=["",""];¯["\\¤£"]=["",""];¯["\\¤¢"]=["",""];¯["\\¤¡"]=["",""];¯["\\£ÿ"]=["",""];¯["\\£þ"]=["",""];¯["\\£ý"]=["",""];¯["\\£ü"]=["",""];¯["\\£û"]=["",""];¯["\\£ú"]=["",""];¯["\\£ù"]=["",""];¯["\\£ø"]=["",""];¯["\\£÷"]=["",""];¯["\\£ö"]=["",""];¯["\\£õ"]=["",""];¯["\\£ô"]=["",""];¯["\\£ó"]=["",""];¯["\\£ò"]=["",""];¯["\\£ñ"]=["",""];¯["\\£ð"]=["",""];¯["\\£ï"]=["",""];ª.Ì=1;ª.¢¥=1<<1;ª.£¿=§(£¾,£½,£¼){£ ­=ª.Õ(£¾,£½,£¼);¥(­==¤||­.£¬()==©)?¤:­};ª.Õ=§(Ç,ß,Ó){£ ¢¤=¤;£ º=¤;¢(¤==Ç||0==Ç.¦){¥ ¤}º=¹ À(Ç);¢(Ó==¤){Ó=(ß&ª.Ì)?Ç.¦-1:0}¢(ß&ª.¢¥){£ £»=(ß&ª.Ì)?®.ý:®.Ü;£ £º=(ß&ª.Ì)?®.þ:®.¢´;c=Ç.Ä(Ó);¢à(c){Ô £»:¢¤="<";³;Ô £º:¢¤="[";³;¢ß:¥ ¤;³}}£ ¸=-1;£ ¢½=(ß&ª.Ì)?"¢¾":"¢¿";¢(¢¤!=¤){¸=Ç[¢½](¢¤,Ó);¢(¸!=-1&&ß&ª.Ì){¢(¸<Ç.¢¾(">",Ó-1)){¥ ¤}}}¨{£ ò=Ç[¢½]("<",Ó);£ ñ=Ç[¢½]("[",Ó);¢(ò==-1&&ñ==-1){¸=-1}¨{¢(ò==-1){¸=ñ}¨{¢(ñ==-1){¸=ò}¨{¢(ò>ñ){¸=ò}¨{¸=ñ}}}}}¢(-1==¸){¥ ¤}º.¢Ý(¸);¥ ¡.£¶(º)};ª.£²="/\\"<:";ª.£³="/\\"<[";ª.¢·=§(Þ,¢»,£¹){£ ¢£=Þ.¢¸();£ ¢¢=¢£;¢(¢»==¤){¢»=""}ð(c=Þ.ï()){¢(c==£¹||¢¼.¢Þ("\\r\\n\\t",c)!=-1||¢¼.¢Þ(¢»,c)!=-1){Þ.¢º();³}¢¢++}¢(¢¢==Þ.Ë.¦){Þ.Æ=¢£;¥ ¤}¢(¢£==¢¢){¥""}¥ Þ.Ë.µ(¢£,¢¢)};ª.£±=§(¢¡,£·){£ ¸=¢¡.¢¸();¢(©==¢¡.¢Ü(®.£¸)){¢¡.¢Ý(¸);¥""}¥ ª.¢·(¢¡,"",£·)};ª.£¶=§(£µ){£ º=£µ;£ i,c;£ Ý="";£ ¢¶=©;£ ­=¤;£ ¢µ=©;£ ü=¤;¢(¤==º||º.¢¹()){¥ ¤}i=º.¢¸();c=º.ï();¢(¤==c){¥ ¤}£ ÿ=(c==®.Ü)?®.ý:®.þ;¢µ=(c==®.Ü)?º.¢Ü(®.£´):©;¢(ÿ==®.þ){Ý=ª.¢·(º,ª.£³,ÿ)}¨{Ý=ª.¢·(º,ª.£²,ÿ)}¢¶=(¯[Ý]!=¤||c==®.¢´);¢(Ý==¤||Ý.¦==0){¥ ¤}¢(!¢µ&&¢¶){ü=ª.£±(º,ÿ);¢(ü==¤){ü=""}}¢(¢¶){£ Ò=º.ï();£ £°=(c==®.Ü)?®.ý:®.þ;¢(Ò!=£°){¥ ¤}}¨{£ £¯="\'".Ä(0);£ £®="\\"".Ä(0);£ Ò=-1;£ î=-1;ð(Ò=º.ï()){¢(Ò==£¯||Ò==£®){¢(î==Ò){î=-1}¨{¢(î!=-1){}¨{î=c}}}¨{¢(c==®.Ü&&î==-1){¥ ¤}}¢(Ò==®.ý){³}}}­=º.£­(i);­=¹ ª(Ý,­,¢µ);­.Å=ü;¥ ­};ª.¬.Ä=§(¸){£ s=¡.¢Û;¥(s==¤||s.¦<=¸)?¤:s.Ä(¸)};ª.¬.£¬=§(){¥(¡.£«()||¡.£©())};ª.¬.£«=§(){¥(¡.Ä(0)==®.Ü&&¯[¡.£ª]!=¤)};ª.¬.£©=§(){¥(¡.Ä(0)==®.¢´)};',95,308,'this|if|var|null|return|length|function|else|false|wt|srcElement|prototype|tag|yx|yh|selected|_28|ud|break|true|substring|iy|selectionStart|idx|new|sp|leftSide|_3a|moveEnd|rightSide|pos|vi|RegExp|_51|_38|charCodeAt|value|location|_7a|mc|_4b|selectionEnd|string|bl|ic|su|_42|_21|_29|ch|_7c|case|ew|_5b|_5c|match|moveStart|_46|cv|oc|_91|_85|_7b|ho|for|_60|_5d|_5a|_5f|_57|_50|_36|_31|_26|_23|_16|_9|_9b|fa|while|_84|_83|hz|character|_47|_41|_44|_32|_2b|_19|_8|_95|jn|rq|_96|_8a|_89|_88|_7d|ag|document|focus|_55|text|collapse|_37|_25|_24|setSelectionRange|_2a|_27|_18|_a|_2|mm|_94|_92|tv|gz|jy|qg|_86|zw|_82|lastIndexOf|indexOf|Object|qb|keyCode|uf|pr|select|_59|move|createTextRange|ln|_4c|_49|_48|_43|_45|targetRange|split|charAt|_2d|except|_17|boundingTop|_11|_7|_3|yt|key|source|sg|ut|jo|default|switch|_6c|mo|_69|fj|_67|err|dw|ld|oq|which|zi|pf|_58|_56|dl|_54|_53|_4f|_3f|replace|selectedRange|setEndPoint|duplicate|parentElement|hj|_39|_35|_2e|_22|_1f|_1e|_1d|_1c|_1a|endPos|startPos|_f|_10|ex|lb|name|ko|kd|vs|re|qq|_98|tf|wu|xj|ve|_8d|tt|_8b|bw|_87|ns|nb|_78|_77|_76|ek|_75|_74|_73|_72|_71|_70|len|_6a|cl|throway|_65|_64|_63|returnValue|shiftKey|_62|_61|gl|pb|_4d|_4e|cx|with|EndToEnd|_3b|_3c|moveToElementText|body|10000000|_34|_33|da|_2c|_20|dk|_13|_1b|_15|_14|ip|_e|_d|_b|_6|_5|_4|selection|u767d|u6c34|u9ec4|u6843|u6a59|u7dd1|u9752|u8d64|u9ed2|u5c0f|u5927|u7279|u53f3|u4e2d|u5de6|u52d5|u70b9|u6d88|u4e0b|u659c|u592a|isEnd|46|37|39|f4|all|f3|f2|f1|StartToEnd|StartToStart|findText|search|createRange|delete|in|undefined|typeof|ay'.split('|')))
