# VMs: Re: Random discoveries in the library

```The Easter calculation portion of my javascript used for a schedule file is
thus:

// EASTER calculation- Find the first full moon following March 21st

var cycle = ((year % 19) + 1)
var nearer = (((11 * cycle)-6) % 30)
var closer = (19 - nearer)

if (closer == 18 && cycle > 11) {
closer = 17 }
if (closer == 19) {
closer = 18}
if (closer < 0) {
closer = (closer + 32) }

fullmoonday = ((closer+Stoffset) % 7)
Easter = (closer + (8 - fullmoonday))
var GF = (Easter - 2)
var EM = (Easter + 1)
var East2 = ""
var Eastmon = "April"
if (GF < 0) {
East2 = "March"
GF = (GF + 32)}
if (closer > 19) {
Eastmon = "March"}
if (EM > 31) {
East2 = "April"
EM = (32 - EM)}

----- Original Message -----
From: <RSRICHMOND@xxxxxxx>
To: "Voynich Ms. mailing list" <voynich@xxxxxxxxxxxxxx>
Sent: Friday, May 03, 2002 2:45 PM
Subject: VMs: Re: Random discoveries in the library

> Jorge Stolfi writes:
>
> >>Hmmm... Well, the usual [Easter] algorithm is based on a *19* year
cycle.
> It uses other divisors, but mostly to account for leap years and the
> Gregorian change....
>
> The 19 year metonic cycle (named after the Greek astronomer Meton, but
known
> to the Babylonians. Mahzor katan, small cycle, in Hebrew) returns the Moon
to
> the same phase on the same solar year date, with an error of an hour or
two.
> It's used to calculate the dates of Passover and Easter, each using an
> algorithm that crashes if it sets the holiday before the vernal equinox.
>
> To return a solar calendar date to the same day of the week requires a 28
> year cycle (omitting the Gregorian correction. Hebrew mahzor gadol, great
> cycle). Thus Easter and Passover date cycles repeat every 19 x 28 = 532
years.
>
> Bob Richmond
> Knoxville, Tennessee

```