void easter(int Year, int *pMonth, int *pDay)
{
	int y, m, d, c, n, i, j, k;
	
	y = Year;
	
	/* From http://aa.usno.navy.mil/faq/docs/easter.php, 2013-06-17, based on algorithm by J.-M. Oudin (1940) */
	c = y / 100;
	n = y - 19 * ( y / 19 );
	k = ( c - 17 ) / 25;
	i = c - c / 4 - ( c - k ) / 3 + 19 * n + 15;
	i = i - 30 * ( i / 30 );
	i = i - ( i / 28 ) * ( 1 - ( i / 28 ) * ( 29 / ( i + 1 ) ) * ( ( 21 - n ) / 11 ) );
	j = y + y / 4 + i + 2 - c + c / 4;
	j = j - 7 * ( j / 7 );
	l = i - j;
	m = 3 + ( l + 40 ) / 44;
	d = l + 28 - 31 * ( m / 4 );
	
	*pMonth = m;
	*pDay = d;
	
	return;
}

