ctions[3];
		const x0 = s2x(w / 2);
		const y0 = s2y(h / 2);
		var y = null;
		// function
		for(var i = 0; i < i_fs.length; ++i) {
			try {
				if(!y || Math.abs(i_fs[i](x0) - y0) < Math.abs(y - y0))
					y = i_fs[i](x0);
			} catch (error) {
				y = 0;
			}
		}
		y_value = y;
		draw_canvas();
	}

	i_canvas.addEventListener('pointermove', function(e) {
		const canvas_rect = i_canvas.getBoundingClientRect();
		const sx = e.clientX - canvas_rect.left;
		const sy = e.clientY - canvas_rect.top;
		const functio