// author: Hans-Peter Pfeiffer
// email:  H.Pfeiffer@stud.uni-heidelberg.de
// date:   2011-12-16
// This file contains "moveable holidays". They can be calculated realtive to the Eastersunday like many christian holidays or relative to a date.
// The german "Buß- und Bettag" is the first wednesday before YEAR-11-23. The placeholders are replaced with the value from the ruleset.
// available functions: EasterSunday(<YEAR>, <numberOfDaysToAdd>), WeekdayRelativeTo(<DateToBeRelativeTo>, <Weekday>, <numberOfWeekdays>, <countItself>)
// available placeholder: DATE, YEAR, MONTH, DAY 
// sunday=1, monday=2, tuesday=3, wednesday=4, thursday=5, friday=6, saturday=7
// 
// FORMAT: "holiday","funcDateCalc(<function>(<arguments>))"
//
// the reference of the values is given in the repattern file
//

// http://en.wikipedia.org/wiki/Ash_Wednesday
"Ash Wednesday","00-00 funcDateCalc(EasterSunday(YEAR, -46))"

// http://en.wikipedia.org/wiki/Palm_Sunday
"Palm Sunday","00-00 funcDateCalc(EasterSunday(YEAR, -7))"
"Yew Sunday","00-00 funcDateCalc(EasterSunday(YEAR, -7))"
"Branch Sunday","00-00 funcDateCalc(EasterSunday(YEAR, -7))"

// http://en.wikipedia.org/wiki/Maundy_Thursday
"Maundy Thursday","00-00 funcDateCalc(EasterSunday(YEAR, -3))"
"Holy Thursday","00-00 funcDateCalc(EasterSunday(YEAR, -3))"
"Covenant Thursday","00-00 funcDateCalc(EasterSunday(YEAR, -3))"
"Great & Holy Thursday","00-00 funcDateCalc(EasterSunday(YEAR, -3))"
"Thursday of Mysteries","00-00 funcDateCalc(EasterSunday(YEAR, -3))"

// http://en.wikipedia.org/wiki/Good_Friday
"Good Friday","00-00 funcDateCalc(EasterSunday(YEAR, -2))" 
"Holy Friday","00-00 funcDateCalc(EasterSunday(YEAR, -2))"
"Great Friday","00-00 funcDateCalc(EasterSunday(YEAR, -2))"
"Easter Friday","00-00 funcDateCalc(EasterSunday(YEAR, -2))"

// http://en.wikipedia.org/wiki/Holy_Saturday
"Holy Saturday","00-00 funcDateCalc(EasterSunday(YEAR, -1))"
"Easter Eve","00-00 funcDateCalc(EasterSunday(YEAR, -1))"
"Black Saturday","00-00 funcDateCalc(EasterSunday(YEAR, -1))"
"Holy and Great Saturday","00-00 funcDateCalc(EasterSunday(YEAR, -1))"
"The Great Sabbath","00-00 funcDateCalc(EasterSunday(YEAR, -1))"
"Joyous Saturday","00-00 funcDateCalc(EasterSunday(YEAR, -1))"

// http://en.wikipedia.org/wiki/Easter
"Easter","00-00 funcDateCalc(EasterSunday(YEAR, 0))"
"Easter Day","00-00 funcDateCalc(EasterSunday(YEAR, 0))" 
"Easter Sunday","00-00 funcDateCalc(EasterSunday(YEAR, 0))"
"Resurrection Day","00-00 funcDateCalc(EasterSunday(YEAR, 0))"
"Resurrection Sunday","00-00 funcDateCalc(EasterSunday(YEAR, 0))"

// http://en.wikipedia.org/wiki/Easter_Monday
"Easter Monday","00-00 funcDateCalc(EasterSunday(YEAR, 1))"

// http://en.wikipedia.org/wiki/Octave_of_Easter
"Octave of Easter","00-00 funcDateCalc(EasterSunday(YEAR, 7))"
"Octave Day of Easter","00-00 funcDateCalc(EasterSunday(YEAR, 7))"
"Low Sunday","00-00 funcDateCalc(EasterSunday(YEAR, 7))"
"Saint Thomas Sunday","00-00 funcDateCalc(EasterSunday(YEAR, 7))"
"St. Thomas Sunday","00-00 funcDateCalc(EasterSunday(YEAR, 7))"
"Quasimodo Sunday","00-00 funcDateCalc(EasterSunday(YEAR, 7))" 
"Quasimodogeniti","00-00 funcDateCalc(EasterSunday(YEAR, 7))"
"Second Sunday of Easter","00-00 funcDateCalc(EasterSunday(YEAR, 7))"
"Divine Mercy Sunday","00-00 funcDateCalc(EasterSunday(YEAR, 7))" 

// http://en.wikipedia.org/wiki/Feast_of_the_Ascension
"Feast of the Ascension","00-00 funcDateCalc(EasterSunday(YEAR, 39))"
"Solemnity of the Ascension of the Lord","00-00 funcDateCalc(EasterSunday(YEAR, 39))" 
"Ascension Thursday","00-00 funcDateCalc(EasterSunday(YEAR, 39))"

// http://en.wikipedia.org/wiki/Father%27s_Day
"Father's Day","06-00 funcDateCalc(EasterSunday(YEAR, 39))"

// http://en.wikipedia.org/wiki/Reformation_Day
"Reformation Sunday","10-00 funcDateCalc(WeekdayRelativeTo(YEAR-10-31, 1, -1, true))"

// http://en.wikipedia.org/wiki/Pentecost
"Pentecost","00-00 funcDateCalc(EasterSunday(YEAR, 49))" 
"Whit Sunday","00-00 funcDateCalc(EasterSunday(YEAR, 49))"
"Whitsun","00-00 funcDateCalc(EasterSunday(YEAR, 49))"
"Whit","00-00 funcDateCalc(EasterSunday(YEAR, 49))"

// http://en.wikipedia.org/wiki/Corpus_Christi_%28feast%29
"Corpus Christi","00-00 funcDateCalc(EasterSunday(YEAR, 60))"
"The Most Holy Body and Blood of Christ","00-00 funcDateCalc(EasterSunday(YEAR, 60))"

// advent sundays: the four sundays before christmas(12-24)
"1. Advent","00-00 funcDateCalc(WeekdayRelativeTo(YEAR-12-24, 1, -4, false))"
"1st Advent","00-00 funcDateCalc(WeekdayRelativeTo(YEAR-12-24, 1, -4, false))"
"first Advent","00-00 funcDateCalc(WeekdayRelativeTo(YEAR-12-24, 1, -4, false))"

"2. Advent","12-00 funcDateCalc(WeekdayRelativeTo(YEAR-12-24, 1, -3, false))"
"2nd Advent","12-00 funcDateCalc(WeekdayRelativeTo(YEAR-12-24, 1, -3, false))"
"second Advent","12-00 funcDateCalc(WeekdayRelativeTo(YEAR-12-24, 1, -3, false))"

"3. Advent","12-00 funcDateCalc(WeekdayRelativeTo(YEAR-12-24, 1, -2, false))"
"3rd Advent","12-00 funcDateCalc(WeekdayRelativeTo(YEAR-12-24, 1, -2, false))"
"third Advent","12-00 funcDateCalc(WeekdayRelativeTo(YEAR-12-24, 1, -2, false))"

"4. Advent","12-00 funcDateCalc(WeekdayRelativeTo(YEAR-12-24, 1, -1, false))"
"4th Advent","12-00 funcDateCalc(WeekdayRelativeTo(YEAR-12-24, 1, -1, false))"
"fourth Advent","12-00 funcDateCalc(WeekdayRelativeTo(YEAR-12-24, 1, -1, false))"

// http://en.wikipedia.org/wiki/Black_Friday_%28shopping%29
"Black Friday","11-00 funcDateCalc(WeekdayRelativeTo(YEAR-11-01, 6, 4, true))"

// http://en.wikipedia.org/wiki/Martin_Luther_King,_Jr._Day
"Birthday of Martin Luther King, Jr.","01-00 funcDateCalc(WeekdayRelativeTo(YEAR-01-01, 2, 3, true))"
"Martin Luther King Day","01-00 funcDateCalc(WeekdayRelativeTo(YEAR-01-01, 2, 3, true))"
"Martin Luther King, Jr. Day","01-00 funcDateCalc(WeekdayRelativeTo(YEAR-01-01, 2, 3, true))"

// http://en.wikipedia.org/wiki/Washington%27s_Birthday
"Presidents Day","02-00 funcDateCalc(WeekdayRelativeTo(YEAR-02-01, 2, 3, true))"
"Presidents' Day","02-00 funcDateCalc(WeekdayRelativeTo(YEAR-02-01, 2, 3, true))"
"President's Day","02-00 funcDateCalc(WeekdayRelativeTo(YEAR-02-01, 2, 3, true))"
"Washington's Birthday","02-00 funcDateCalc(WeekdayRelativeTo(YEAR-02-01, 2, 3, true))"

// http://en.wikipedia.org/wiki/Memorial_Day
"Memorial Day","05-00 funcDateCalc(WeekdayRelativeTo(YEAR-06-01, 2, -1, false))"
"Decoration Day","05-00 funcDateCalc(WeekdayRelativeTo(YEAR-06-01, 2, -1, false))"

// http://en.wikipedia.org/wiki/Labor_Day
"Labor Day","09-00 funcDateCalc(WeekdayRelativeTo(YEAR-09-01, 2, 1, true))"

// http://en.wikipedia.org/wiki/Columbus_Day
"Columbus Day","10-00 funcDateCalc(WeekdayRelativeTo(YEAR-10-01, 2, 2, true))"

// http://en.wikipedia.org/wiki/Thanksgiving_%28United_States%29
"Thanksgiving","11-00 funcDateCalc(WeekdayRelativeTo(YEAR-11-01, 5, 4, true))"
"Thanksgiving Day","11-00 funcDateCalc(WeekdayRelativeTo(YEAR-11-01, 5, 4, true))"

// http://en.wikipedia.org/wiki/Mother%27s_Day
"Mother's Day","05-00 funcDateCalc(WeekdayRelativeTo(YEAR-05-01, 1, 2, true))"
