function z2h_word(src) {
// http://homepage3.nifty.com/aokura/jscript/z2h_word.html
	return src.replace(/([Ａ-Ｚａ-ｚ０-９＿])/g,
		function ($0) {
		return String.fromCharCode($0.charCodeAt(0) - 65248);
	});
}
function addcomma (tar) {
// http://d.hatena.ne.jp/nana21/20061128
	var repstr = tar;
	var newstr = "";

	while(repstr != (newstr = String(repstr).replace(/^([+-]?\d+)(\d\d\d)/,"$1,$2"))) {
		repstr = newstr;
	}
	return newstr;
}
function tmp__calc(calc_data, calc_seg, calc_dx) {
	var calc_value = 0;
	var calc_i;
	if (calc_data >= 0) {
		if (calc_data >= calc_seg[0]) {
			calc_value = 0;
		} else if (calc_data < calc_seg[calc_seg.length - 1]) {
			calc_value = -1;
		} else { // if (data > 0) {
			for (calc_i = 1; calc_i < calc_seg.length; calc_i++) {
				calc_value += calc_dx[calc_i-1];
				if (calc_data >= calc_seg[calc_i]) {
					calc_value += Math.round(((calc_seg[calc_i-1] - calc_data) * calc_dx[calc_i]) / (calc_seg[calc_i-1] - calc_seg[calc_i]));
					break;
				}
			}
		}
	} else {
		calc_value = -2;
	}
	return calc_value;
}

function tmp__ruler(ruler_mydoc, ruler_ratio) {
	var ruler_className=(typeof ScriptEngine=='function')?'className':'class';
	var ruler_table = ruler_mydoc.createElement("TABLE");
	var ruler_tbody = ruler_mydoc.createElement("TBODY");
	var ruler_tr;
	var ruler_td;
	var ruler_i;
	var ruler_br;
	var ruler_img;

	ruler_table.insertBefore(ruler_tbody, null);
	ruler_table.setAttribute(ruler_className, 'graph');

	ruler_tr = ruler_mydoc.createElement("TR");
	ruler_tbody.insertBefore(ruler_tr, null);

	for (ruler_i=0; ruler_i<100; ruler_i++) {
		ruler_td = ruler_mydoc.createElement("TD");
		ruler_br = ruler_mydoc.createElement("BR")
		ruler_tr.insertBefore(ruler_td, null);
		ruler_td.insertBefore(ruler_br, null);

		ruler_td.setAttribute('width','1');
		if (ruler_i <= 100 - ruler_ratio) {
			ruler_td.setAttribute(ruler_className,'on');
		} else {
			ruler_td.setAttribute(ruler_className,'off');
		}
	}
	ruler_tr = ruler_mydoc.createElement("TR");
	ruler_tbody.insertBefore(ruler_tr, null);
	ruler_td   = ruler_mydoc.createElement("TD");
	ruler_tr.insertBefore(ruler_td, null);
	ruler_td.setAttribute('colSpan','100');

	ruler_img = ruler_mydoc.createElement("IMG");
	ruler_td.insertBefore(ruler_img, null);
	ruler_img.setAttribute('src','../ruler.png');

	return ruler_table;
}

