function validEmail(addr) {
	var i, re, eArr, uArr, dArr, uArrLen, dArrLen;
	eArr = addr.split("@");
	if (eArr.length != 2) {
		return false;
	}
	uArr = eArr[0].split(".");
	uArrLen = uArr.length;
	re = /^[a-zA-Z0-9+\-=\^_{}~]+$/;
	for (i=0;i<uArrLen;i++) {
		if (!re.test(uArr[i])) {
			return false;
		}
	}
	dArr = eArr[1].split(".");
	dArrLen = dArr.length;
	if (dArrLen < 2) {
		return false;
	}
	re = /^[a-zA-z]{2,6}$/;
	if (!re.test(dArr[dArrLen-1])) {
		return false;
	}
	re = /^([a-zA-Z0-9][a-zA-Z0-9\-]*)?[a-zA-Z0-9]$/;
	for (i=0;i<(dArrLen-1);i++) {
		if (!re.test(dArr[i])) {
			return false;
		}
	}
	return true;
}