function validaCPF(valor) {
	var givenValue, calculatedDv1, calculatedDv2, calculatedDv;
	if(valor == '00000000000' || valor == '11111111111' || valor == '22222222222' || valor == '33333333333' || valor == '44444444444' || valor == '55555555555' || valor == '66666666666' || valor == '77777777777' || valor == '88888888888' || valor == '99999999999'){
		return false;
	}
	givenValue = valor.substring(0,9);
	calculatedDv1 = getDvCpf(givenValue);
	calculatedDv2 = getDvCpf(givenValue + calculatedDv1);
	calculatedDv = '' + calculatedDv1 + calculatedDv2;
	return (calculatedDv == valor.substring(9));
}
function getDvCpf(valor){
	var soma, fator, i;
	soma = 0; fator = 2;
	for(i=valor.length-1;i>=0;i--){
		soma = soma + (parseInt(valor.charAt(i),10) * fator);
		fator ++;
	}
	soma = 11 - (soma % 11);
	if (soma >= 10) soma = 0;
   return (soma);
}