diff --git a/include/holidays/ao.rem b/include/holidays/ao.rem index 56dd8b69..30805a09 100644 --- a/include/holidays/ao.rem +++ b/include/holidays/ao.rem @@ -4,36 +4,36 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG Dia do Ano Novo -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Dia do Ano Novo (ponte) -REM 3 February SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Dia do Início da Luta Armada de Libertação Nacional (ponte) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 4] MSG Dia do Ano Novo (ponte) +REM 3 February SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 2, 4)) == 2] MSG Dia do Início da Luta Armada de Libertação Nacional (ponte) OMIT 4 February MSG Dia do Início da Luta Armada de Libertação Nacional -REM 5 February SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Dia do Início da Luta Armada de Libertação Nacional (ponte) -REM 12 February SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Dia do Carnaval (ponte) -REM 14 February SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Dia do Carnaval (ponte) +REM 5 February SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 2, 4)) == 4] MSG Dia do Início da Luta Armada de Libertação Nacional (ponte) +REM 12 February SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 2, 13)) == 2] MSG Dia do Carnaval (ponte) +REM 14 February SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 2, 13)) == 4] MSG Dia do Carnaval (ponte) OMIT [easterdate($Uy)-47] MSG Dia do Carnaval -REM 7 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Dia Internacional da Mulher (ponte) +REM 7 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 8)) == 2] MSG Dia Internacional da Mulher (ponte) OMIT 8 March MSG Dia Internacional da Mulher -REM 9 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Dia Internacional da Mulher (ponte) -REM 22 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Dia da Libertação da África Austral (ponte) +REM 9 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 8)) == 4] MSG Dia Internacional da Mulher (ponte) +REM 22 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 23)) == 2] MSG Dia da Libertação da África Austral (ponte) OMIT 23 March MSG Dia da Libertação da África Austral -REM 24 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Dia da Libertação da África Austral (ponte) -REM 3 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Dia da Paz e Reconciliação Nacional (ponte) +REM 24 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 23)) == 4] MSG Dia da Libertação da África Austral (ponte) +REM 3 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 4)) == 2] MSG Dia da Paz e Reconciliação Nacional (ponte) OMIT 4 April MSG Dia da Paz e Reconciliação Nacional -REM 5 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Dia da Paz e Reconciliação Nacional (ponte) +REM 5 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 4)) == 4] MSG Dia da Paz e Reconciliação Nacional (ponte) OMIT [easterdate($Uy)-2] MSG Sexta-Feira Santa -REM 30 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Dia Internacional do Trabalhador (ponte) +REM 30 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 2] MSG Dia Internacional do Trabalhador (ponte) OMIT 1 May MSG Dia Internacional do Trabalhador -REM 2 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Dia Internacional do Trabalhador (ponte) -REM 16 September SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Dia do Fundador da Nação e do Herói Nacional (ponte) +REM 2 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 4] MSG Dia Internacional do Trabalhador (ponte) +REM 16 September SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 9, 17)) == 2] MSG Dia do Fundador da Nação e do Herói Nacional (ponte) OMIT 17 September MSG Dia do Fundador da Nação e do Herói Nacional -REM 18 September SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Dia do Fundador da Nação e do Herói Nacional (ponte) -REM 1 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Dia dos Finados (ponte) +REM 18 September SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 9, 17)) == 4] MSG Dia do Fundador da Nação e do Herói Nacional (ponte) +REM 1 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 2)) == 2] MSG Dia dos Finados (ponte) OMIT 2 November MSG Dia dos Finados -REM 3 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Dia dos Finados (ponte) -REM 10 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Dia da Independência Nacional (ponte) +REM 3 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 2)) == 4] MSG Dia dos Finados (ponte) +REM 10 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 11)) == 2] MSG Dia da Independência Nacional (ponte) OMIT 11 November MSG Dia da Independência Nacional -REM 12 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Dia da Independência Nacional (ponte) -REM 24 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Dia de Natal e da Família (ponte) +REM 12 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 11)) == 4] MSG Dia da Independência Nacional (ponte) +REM 24 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 2] MSG Dia de Natal e da Família (ponte) OMIT 25 December MSG Dia de Natal e da Família -REM 26 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Dia de Natal e da Família (ponte) -REM 31 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Dia do Ano Novo (ponte) +REM 26 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 4] MSG Dia de Natal e da Família (ponte) +REM 31 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 2] MSG Dia do Ano Novo (ponte) diff --git a/include/holidays/ar.rem b/include/holidays/ar.rem index 24de16ff..b71c5784 100644 --- a/include/holidays/ar.rem +++ b/include/holidays/ar.rem @@ -11,26 +11,26 @@ OMIT 2 April MSG Día del Veterano y de los Caidos en la Guerra de Malvinas OMIT [easterdate($Uy)-2] MSG Viernes Santo OMIT 1 May MSG Día del Trabajo OMIT 25 May MSG Día de la Revolución de Mayo -REM 15 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Paso a la Inmortalidad del General Don Martín Miguel de Güemes (observado) -REM 16 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Paso a la Inmortalidad del General Don Martín Miguel de Güemes (observado) +REM 15 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 17)) == 3] MSG Paso a la Inmortalidad del General Don Martín Miguel de Güemes (observado) +REM 16 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 17)) == 2] MSG Paso a la Inmortalidad del General Don Martín Miguel de Güemes (observado) OMIT 17 June MSG Paso a la Inmortalidad del General Don Martín Miguel de Güemes OMIT 20 June MSG Paso a la Inmortalidad del General Don Manuel Belgrano -REM 21 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Paso a la Inmortalidad del General Don Martín Miguel de Güemes (observado) +REM 21 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 17)) == 4] MSG Paso a la Inmortalidad del General Don Martín Miguel de Güemes (observado) OMIT 9 July MSG Día de la Independencia -REM 15 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Paso a la Inmortalidad del General Don José de San Martin (observado) -REM 16 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Paso a la Inmortalidad del General Don José de San Martin (observado) +REM 15 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 17)) == 3] MSG Paso a la Inmortalidad del General Don José de San Martin (observado) +REM 16 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 17)) == 2] MSG Paso a la Inmortalidad del General Don José de San Martin (observado) OMIT 17 August MSG Paso a la Inmortalidad del General Don José de San Martin -REM 20 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Paso a la Inmortalidad del General Don José de San Martin (observado) -REM 21 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Paso a la Inmortalidad del General Don José de San Martin (observado) -REM 10 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día del Respeto a la Diversidad Cultural (observado) -REM 11 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día del Respeto a la Diversidad Cultural (observado) +REM 20 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 17)) == 5] MSG Paso a la Inmortalidad del General Don José de San Martin (observado) +REM 21 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 17)) == 4] MSG Paso a la Inmortalidad del General Don José de San Martin (observado) +REM 10 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 12)) == 3] MSG Día del Respeto a la Diversidad Cultural (observado) +REM 11 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 12)) == 2] MSG Día del Respeto a la Diversidad Cultural (observado) OMIT 12 October MSG Día del Respeto a la Diversidad Cultural -REM 15 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día del Respeto a la Diversidad Cultural (observado) -REM 16 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día del Respeto a la Diversidad Cultural (observado) -REM 18 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de la Soberanía Nacional (observado) -REM 19 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de la Soberanía Nacional (observado) +REM 15 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 12)) == 5] MSG Día del Respeto a la Diversidad Cultural (observado) +REM 16 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 12)) == 4] MSG Día del Respeto a la Diversidad Cultural (observado) +REM 18 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 20)) == 3] MSG Día de la Soberanía Nacional (observado) +REM 19 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 20)) == 2] MSG Día de la Soberanía Nacional (observado) OMIT 20 November MSG Día de la Soberanía Nacional -REM 23 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de la Soberanía Nacional (observado) -REM 24 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de la Soberanía Nacional (observado) +REM 23 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 20)) == 5] MSG Día de la Soberanía Nacional (observado) +REM 24 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 20)) == 4] MSG Día de la Soberanía Nacional (observado) OMIT 8 December MSG Inmaculada Concepción de María OMIT 25 December MSG Navidad diff --git a/include/holidays/as.rem b/include/holidays/as.rem index c1c0cf4f..090c8630 100644 --- a/include/holidays/as.rem +++ b/include/holidays/as.rem @@ -4,33 +4,33 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) REM Third Monday in January SCANFROM -28 ADDOMIT MSG Martin Luther King Jr. Day REM Third Monday in February SCANFROM -28 ADDOMIT MSG Washington's Birthday -REM 16 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG American Samoa Flag Day (observed) +REM 16 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 17)) == 6] MSG American Samoa Flag Day (observed) OMIT 17 April MSG American Samoa Flag Day -REM 18 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG American Samoa Flag Day (observed) +REM 18 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 17)) == 0] MSG American Samoa Flag Day (observed) REM Last Monday in May SCANFROM -28 ADDOMIT MSG Memorial Day -REM 18 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Juneteenth National Independence Day (observed) +REM 18 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 19)) == 6] MSG Juneteenth National Independence Day (observed) OMIT 19 June MSG Juneteenth National Independence Day -REM 20 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Juneteenth National Independence Day (observed) -REM 3 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Independence Day (observed) +REM 20 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 19)) == 0] MSG Juneteenth National Independence Day (observed) +REM 3 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 4)) == 6] MSG Independence Day (observed) OMIT 4 July MSG Independence Day -REM 5 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence Day (observed) -REM 15 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Manu'a Islands Cession Day (observed) +REM 5 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 4)) == 0] MSG Independence Day (observed) +REM 15 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 16)) == 6] MSG Manu'a Islands Cession Day (observed) OMIT 16 July MSG Manu'a Islands Cession Day -REM 17 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Manu'a Islands Cession Day (observed) +REM 17 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 16)) == 0] MSG Manu'a Islands Cession Day (observed) REM First Monday in September SCANFROM -28 ADDOMIT MSG Labor Day REM Second Monday in October SCANFROM -28 ADDOMIT MSG Columbus Day REM Second Sunday in October SCANFROM -28 ADDOMIT MSG White Sunday -REM 10 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Veterans Day (observed) +REM 10 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 11)) == 6] MSG Veterans Day (observed) OMIT 11 November MSG Veterans Day -REM 12 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Veterans Day (observed) +REM 12 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 11)) == 0] MSG Veterans Day (observed) REM Fourth Thursday in November SCANFROM -28 ADDOMIT MSG Thanksgiving -REM 24 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Christmas Day (observed) +REM 24 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed) OMIT 25 December MSG Christmas Day -REM 26 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) -REM 31 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG New Year's Day (observed) +REM 26 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 31 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed) REM 14 February MSG Valentine's Day REM 17 March MSG Saint Patrick's Day REM 31 October MSG Halloween diff --git a/include/holidays/au/act.rem b/include/holidays/au/act.rem index 33d3bfbd..fac7d79a 100644 --- a/include/holidays/au/act.rem +++ b/include/holidays/au/act.rem @@ -9,16 +9,16 @@ # If you want the national holidays as well, you must # also include [$SysInclude]/au.rem -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed) REM Second Monday in March SCANFROM -28 ADDOMIT MSG Canberra Day OMIT [easterdate($Uy)-1] MSG Easter Saturday OMIT [easterdate($Uy)] MSG Easter Sunday REM Monday 27 May ADDOMIT SCANFROM -28 MSG Reconciliation Day REM Second Monday in June SCANFROM -28 ADDOMIT MSG King's Birthday REM First Monday in October SCANFROM -28 ADDOMIT MSG Labour Day -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Christmas Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Boxing Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Boxing Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 6] MSG Boxing Day (observed) REM First Monday in August SCANFROM -28 MSG Bank Holiday diff --git a/include/holidays/au/nsw.rem b/include/holidays/au/nsw.rem index c5827ce1..32b1fc15 100644 --- a/include/holidays/au/nsw.rem +++ b/include/holidays/au/nsw.rem @@ -9,14 +9,14 @@ # If you want the national holidays as well, you must # also include [$SysInclude]/au.rem -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed) OMIT [easterdate($Uy)-1] MSG Easter Saturday OMIT [easterdate($Uy)] MSG Easter Sunday REM Second Monday in June SCANFROM -28 ADDOMIT MSG King's Birthday REM First Monday in October SCANFROM -28 ADDOMIT MSG Labour Day -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Christmas Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Boxing Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Boxing Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 6] MSG Boxing Day (observed) REM First Monday in August SCANFROM -28 MSG Bank Holiday diff --git a/include/holidays/au/nt.rem b/include/holidays/au/nt.rem index e39e848b..a5796aa5 100644 --- a/include/holidays/au/nt.rem +++ b/include/holidays/au/nt.rem @@ -9,17 +9,17 @@ # If you want the national holidays as well, you must # also include [$SysInclude]/au.rem -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed) OMIT [easterdate($Uy)-1] MSG Easter Saturday OMIT [easterdate($Uy)] MSG Easter Sunday REM First Monday in May SCANFROM -28 ADDOMIT MSG May Day REM Second Monday in June SCANFROM -28 ADDOMIT MSG King's Birthday REM First Monday in August SCANFROM -28 ADDOMIT MSG Picnic Day -REM 26 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Boxing Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Boxing Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Boxing Day (observed) +REM 26 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 1] MSG Boxing Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 6] MSG Boxing Day (observed) REM 24 December MSG Christmas Eve (from 7pm) REM 31 December MSG New Year's Eve (from 7pm) diff --git a/include/holidays/au/qld.rem b/include/holidays/au/qld.rem index ce645f1b..a3a9e1e1 100644 --- a/include/holidays/au/qld.rem +++ b/include/holidays/au/qld.rem @@ -9,14 +9,14 @@ # If you want the national holidays as well, you must # also include [$SysInclude]/au.rem -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed) OMIT [easterdate($Uy)-1] MSG Easter Saturday OMIT [easterdate($Uy)] MSG Easter Sunday REM First Monday in May SCANFROM -28 ADDOMIT MSG Labour Day REM Wednesday 10 August ADDOMIT SCANFROM -28 MSG The Royal Queensland Show REM First Monday in October SCANFROM -28 ADDOMIT MSG King's Birthday -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Christmas Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Boxing Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Boxing Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 6] MSG Boxing Day (observed) diff --git a/include/holidays/au/sa.rem b/include/holidays/au/sa.rem index 59c44079..541b15fa 100644 --- a/include/holidays/au/sa.rem +++ b/include/holidays/au/sa.rem @@ -9,18 +9,18 @@ # If you want the national holidays as well, you must # also include [$SysInclude]/au.rem -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed) REM Second Monday in March SCANFROM -28 ADDOMIT MSG Adelaide Cup Day OMIT [easterdate($Uy)-1] MSG Easter Saturday OMIT [easterdate($Uy)] MSG Easter Sunday REM Second Monday in June SCANFROM -28 ADDOMIT MSG King's Birthday REM First Monday in October SCANFROM -28 ADDOMIT MSG Labour Day OMIT 26 December MSG Proclamation Day -REM 26 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Proclamation Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Proclamation Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Proclamation Day (observed) +REM 26 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 1] MSG Proclamation Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Proclamation Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 6] MSG Proclamation Day (observed) REM 24 December MSG Christmas Eve (from 7pm) REM 31 December MSG New Year's Eve (from 7pm) diff --git a/include/holidays/au/tas.rem b/include/holidays/au/tas.rem index 9483acab..d01ba1ea 100644 --- a/include/holidays/au/tas.rem +++ b/include/holidays/au/tas.rem @@ -11,5 +11,5 @@ REM Second Monday in March SCANFROM -28 ADDOMIT MSG Eight Hours Day REM Second Monday in June SCANFROM -28 ADDOMIT MSG King's Birthday -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed) diff --git a/include/holidays/au/vic.rem b/include/holidays/au/vic.rem index 07e37b53..70400176 100644 --- a/include/holidays/au/vic.rem +++ b/include/holidays/au/vic.rem @@ -9,15 +9,15 @@ # If you want the national holidays as well, you must # also include [$SysInclude]/au.rem -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed) REM Second Monday in March SCANFROM -28 ADDOMIT MSG Labour Day OMIT [easterdate($Uy)-1] MSG Easter Saturday OMIT [easterdate($Uy)] MSG Easter Sunday REM Second Monday in June SCANFROM -28 ADDOMIT MSG King's Birthday REM Saturday 1 October --8 ADDOMIT SCANFROM -28 MSG Grand Final Day REM First Tuesday in November SCANFROM -28 ADDOMIT MSG Melbourne Cup Day -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Christmas Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Boxing Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Boxing Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 6] MSG Boxing Day (observed) diff --git a/include/holidays/au/wa.rem b/include/holidays/au/wa.rem index bfc0ea9d..bc1f9dc4 100644 --- a/include/holidays/au/wa.rem +++ b/include/holidays/au/wa.rem @@ -9,15 +9,15 @@ # If you want the national holidays as well, you must # also include [$SysInclude]/au.rem -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed) REM First Monday in March SCANFROM -28 ADDOMIT MSG Labour Day OMIT [easterdate($Uy)] MSG Easter Sunday -REM 26 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ANZAC Day (observed) -REM 27 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ANZAC Day (observed) +REM 26 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 25)) == 0] MSG ANZAC Day (observed) +REM 27 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 25)) == 6] MSG ANZAC Day (observed) REM First Monday in June SCANFROM -28 ADDOMIT MSG Western Australia Day -REM 26 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Boxing Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Boxing Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Boxing Day (observed) +REM 26 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 1] MSG Boxing Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 6] MSG Boxing Day (observed) diff --git a/include/holidays/ba/bih.rem b/include/holidays/ba/bih.rem index ad55266d..c239f132 100644 --- a/include/holidays/ba/bih.rem +++ b/include/holidays/ba/bih.rem @@ -9,13 +9,13 @@ # If you want the national holidays as well, you must # also include [$SysInclude]/ba.rem -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Nova godina (preneseno) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG Nova godina (preneseno) OMIT 1 March MSG Dan nezavisnosti OMIT [easterdate($Uy)-2] MSG Veliki petak (Katolički) OMIT [easterdate($Uy)] MSG Uskrs (Katolički) OMIT [easterdate($Uy)] MSG Vaskrs (Pravoslavni) OMIT [easterdate($Uy)+1] MSG Uskrsni ponedjeljak (Pravoslavni) -REM 3 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Međunarodni praznik rada (preneseno) +REM 3 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Međunarodni praznik rada (preneseno) OMIT 9 May MSG Dan pobjede nad fašizmom OMIT 25 November MSG Dan državnosti OMIT 24 December MSG Badnji dan (Katolički) diff --git a/include/holidays/ba/brc.rem b/include/holidays/ba/brc.rem index 027aa98b..4f7a572e 100644 --- a/include/holidays/ba/brc.rem +++ b/include/holidays/ba/brc.rem @@ -9,11 +9,11 @@ # If you want the national holidays as well, you must # also include [$SysInclude]/ba.rem -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Nova godina (preneseno) -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Nova godina (preneseno) -REM 8 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Božić (Pravoslavni) (preneseno) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG Nova godina (preneseno) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG Nova godina (preneseno) +REM 8 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 7)) == 0] MSG Božić (Pravoslavni) (preneseno) OMIT 8 March MSG Dan uspostavljanja Brčko distrikta -REM 9 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Dan uspostavljanja Brčko distrikta (preneseno) -REM 3 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Međunarodni praznik rada (preneseno) -REM 3 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Međunarodni praznik rada (preneseno) -REM 26 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Božić (Katolički) (preneseno) +REM 9 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 8)) == 0] MSG Dan uspostavljanja Brčko distrikta (preneseno) +REM 3 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Međunarodni praznik rada (preneseno) +REM 3 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 6] MSG Međunarodni praznik rada (preneseno) +REM 26 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Božić (Katolički) (preneseno) diff --git a/include/holidays/ba/srp.rem b/include/holidays/ba/srp.rem index bff7c2aa..4240d9c3 100644 --- a/include/holidays/ba/srp.rem +++ b/include/holidays/ba/srp.rem @@ -9,13 +9,13 @@ # If you want the national holidays as well, you must # also include [$SysInclude]/ba.rem -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Nova godina (preneseno) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG Nova godina (preneseno) OMIT 14 January MSG Pravoslavna Nova godina OMIT [easterdate($Uy)-2] MSG Veliki petak (Katolički) OMIT [easterdate($Uy)] MSG Uskrs (Katolički) OMIT [easterdate($Uy)] MSG Vaskrs (Pravoslavni) OMIT [easterdate($Uy)+1] MSG Uskrsni ponedjeljak (Pravoslavni) -REM 3 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Međunarodni praznik rada (preneseno) +REM 3 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 6] MSG Međunarodni praznik rada (preneseno) OMIT 9 May MSG Dan pobjede nad fašizmom OMIT 21 November MSG Dan uspostave Opšteg okvirnog sporazuma za mir u Bosni i Hercegovini OMIT 24 December MSG Badnji dan (Katolički) diff --git a/include/holidays/bb.rem b/include/holidays/bb.rem index fa977ed4..561341f1 100644 --- a/include/holidays/bb.rem +++ b/include/holidays/bb.rem @@ -4,23 +4,23 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) OMIT 21 January MSG Errol Barrow Day -REM 22 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Errol Barrow Day (observed) +REM 22 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 21)) == 0] MSG Errol Barrow Day (observed) OMIT [easterdate($Uy)-2] MSG Good Friday OMIT [easterdate($Uy)+1] MSG Easter Monday OMIT 28 April MSG National Heroes Day -REM 29 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG National Heroes Day (observed) +REM 29 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 28)) == 0] MSG National Heroes Day (observed) OMIT 1 May MSG May Day -REM 2 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG May Day (observed) +REM 2 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG May Day (observed) OMIT [easterdate($Uy)+50] MSG Whit Monday OMIT 1 August MSG Emancipation Day REM First Monday in August SCANFROM -28 ADDOMIT MSG Kadooment Day -REM 2 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Emancipation Day (observed) -REM 3 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Emancipation Day (observed) +REM 2 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 1)) == 1] MSG Emancipation Day (observed) +REM 3 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 1)) == 0] MSG Emancipation Day (observed) OMIT 30 November MSG Independence Day -REM 1 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence Day (observed) +REM 1 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 30)) == 0] MSG Independence Day (observed) OMIT 25 December MSG Christmas Day OMIT 26 December MSG Boxing Day -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Boxing Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed) diff --git a/include/holidays/bf.rem b/include/holidays/bf.rem index d2922daf..5938d6e8 100644 --- a/include/holidays/bf.rem +++ b/include/holidays/bf.rem @@ -4,24 +4,24 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) OMIT 3 January MSG Revolution Day -REM 4 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Revolution Day (observed) +REM 4 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 3)) == 0] MSG Revolution Day (observed) OMIT 8 March MSG International Women's Day -REM 9 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG International Women's Day (observed) +REM 9 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 8)) == 0] MSG International Women's Day (observed) OMIT [easterdate($Uy)+1] MSG Easter Monday OMIT 1 May MSG Labour Day -REM 2 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Labour Day (observed) +REM 2 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Labour Day (observed) OMIT [easterdate($Uy)+39] MSG Ascension Day OMIT 5 August MSG Independence Day -REM 6 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence Day (observed) +REM 6 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 5)) == 0] MSG Independence Day (observed) OMIT 15 August MSG Assumption Day -REM 16 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Assumption Day (observed) +REM 16 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 15)) == 0] MSG Assumption Day (observed) OMIT 31 October MSG Martyrs' Day OMIT 1 November MSG All Saints' Day -REM 1 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Martyrs' Day (observed) -REM 2 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG All Saints' Day (observed) +REM 1 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 31)) == 0] MSG Martyrs' Day (observed) +REM 2 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 1)) == 0] MSG All Saints' Day (observed) OMIT 11 December MSG Proclamation of Independence Day -REM 12 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Proclamation of Independence Day (observed) +REM 12 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 11)) == 0] MSG Proclamation of Independence Day (observed) OMIT 25 December MSG Christmas Day -REM 26 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) +REM 26 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) diff --git a/include/holidays/bi.rem b/include/holidays/bi.rem index 69e8451a..beb35003 100644 --- a/include/holidays/bi.rem +++ b/include/holidays/bi.rem @@ -4,25 +4,25 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) OMIT 5 February MSG Unity Day -REM 6 February SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Unity Day (observed) +REM 6 February SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 2, 5)) == 0] MSG Unity Day (observed) OMIT 6 April MSG President Ntaryamira Day -REM 7 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG President Ntaryamira Day (observed) +REM 7 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 6)) == 0] MSG President Ntaryamira Day (observed) OMIT 1 May MSG Labour Day -REM 2 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Labour Day (observed) +REM 2 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Labour Day (observed) OMIT [easterdate($Uy)+39] MSG Ascension Day OMIT 8 June MSG President Nkurunziza Day -REM 9 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG President Nkurunziza Day (observed) +REM 9 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 8)) == 0] MSG President Nkurunziza Day (observed) OMIT 1 July MSG Independence Day -REM 2 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence Day (observed) +REM 2 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 1)) == 0] MSG Independence Day (observed) OMIT 15 August MSG Assumption Day -REM 16 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Assumption Day (observed) +REM 16 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 15)) == 0] MSG Assumption Day (observed) OMIT 13 October MSG Prince Louis Rwagasore Day -REM 14 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Prince Louis Rwagasore Day (observed) +REM 14 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 13)) == 0] MSG Prince Louis Rwagasore Day (observed) OMIT 21 October MSG President Ndadaye's Day -REM 22 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG President Ndadaye's Day (observed) +REM 22 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 21)) == 0] MSG President Ndadaye's Day (observed) OMIT 1 November MSG All Saints' Day -REM 2 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG All Saints' Day (observed) +REM 2 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 1)) == 0] MSG All Saints' Day (observed) OMIT 25 December MSG Christmas Day -REM 26 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) +REM 26 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) diff --git a/include/holidays/bn.rem b/include/holidays/bn.rem index 709d2863..9c67567f 100644 --- a/include/holidays/bn.rem +++ b/include/holidays/bn.rem @@ -4,17 +4,17 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG Awal Tahun Masihi -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Awal Tahun Masihi (diperhatikan) -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 6] MSG Awal Tahun Masihi (diperhatikan) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG Awal Tahun Masihi (diperhatikan) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 5] MSG Awal Tahun Masihi (diperhatikan) OMIT 23 February MSG Hari Kebangsaan -REM 24 February SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Hari Kebangsaan (diperhatikan) -REM 24 February SCANFROM -28 ADDOMIT SATISFY [$Tw == 6] MSG Hari Kebangsaan (diperhatikan) +REM 24 February SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 2, 23)) == 0] MSG Hari Kebangsaan (diperhatikan) +REM 24 February SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 2, 23)) == 5] MSG Hari Kebangsaan (diperhatikan) OMIT 31 May MSG Hari Angkatan Bersenjata Diraja Brunei -REM 1 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Hari Angkatan Bersenjata Diraja Brunei (diperhatikan) -REM 1 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 6] MSG Hari Angkatan Bersenjata Diraja Brunei (diperhatikan) +REM 1 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 31)) == 0] MSG Hari Angkatan Bersenjata Diraja Brunei (diperhatikan) +REM 1 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 31)) == 5] MSG Hari Angkatan Bersenjata Diraja Brunei (diperhatikan) OMIT 15 July MSG Hari Keputeraan KDYMM Sultan Brunei -REM 16 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Hari Keputeraan KDYMM Sultan Brunei (diperhatikan) -REM 16 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 6] MSG Hari Keputeraan KDYMM Sultan Brunei (diperhatikan) +REM 16 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 15)) == 0] MSG Hari Keputeraan KDYMM Sultan Brunei (diperhatikan) +REM 16 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 15)) == 5] MSG Hari Keputeraan KDYMM Sultan Brunei (diperhatikan) OMIT 25 December MSG Hari Natal -REM 26 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Hari Natal (diperhatikan) -REM 26 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 6] MSG Hari Natal (diperhatikan) +REM 26 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Hari Natal (diperhatikan) +REM 26 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 5] MSG Hari Natal (diperhatikan) diff --git a/include/holidays/bo.rem b/include/holidays/bo.rem index ea946f0a..2b915509 100644 --- a/include/holidays/bo.rem +++ b/include/holidays/bo.rem @@ -11,20 +11,20 @@ # [$SysInclude]/bo/ OMIT 1 January MSG Año Nuevo -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Año Nuevo (observado) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG Año Nuevo (observado) OMIT 22 January MSG Día de la Creación del Estado Plurinacional de Bolivia -REM 23 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de la Creación del Estado Plurinacional de Bolivia (observado) +REM 23 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 22)) == 0] MSG Día de la Creación del Estado Plurinacional de Bolivia (observado) OMIT [easterdate($Uy)-48] MSG Carnaval OMIT [easterdate($Uy)-47] MSG Carnaval OMIT [easterdate($Uy)-2] MSG Viernes Santo OMIT 1 May MSG Día del Trabajo -REM 2 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día del Trabajo (observado) +REM 2 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Día del Trabajo (observado) OMIT [easterdate($Uy)+60] MSG Corpus Christi OMIT 21 June MSG Año Nuevo Aymara Amazónico -REM 22 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Año Nuevo Aymara Amazónico (observado) +REM 22 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 21)) == 0] MSG Año Nuevo Aymara Amazónico (observado) OMIT 6 August MSG Día de la Independencia de Bolivia -REM 7 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de la Independencia de Bolivia (observado) +REM 7 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 6)) == 0] MSG Día de la Independencia de Bolivia (observado) OMIT 17 October MSG Día de la Dignidad Nacional OMIT 2 November MSG Día de Todos los Difuntos OMIT 25 December MSG Navidad -REM 26 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Navidad (observado) +REM 26 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Navidad (observado) diff --git a/include/holidays/bs.rem b/include/holidays/bs.rem index d983a4b4..6a479b68 100644 --- a/include/holidays/bs.rem +++ b/include/holidays/bs.rem @@ -4,21 +4,21 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) OMIT 10 January MSG Majority Rule Day -REM 11 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Majority Rule Day (observed) -REM 12 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Majority Rule Day (observed) +REM 11 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 10)) == 0] MSG Majority Rule Day (observed) +REM 12 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 10)) == 6] MSG Majority Rule Day (observed) OMIT [easterdate($Uy)-2] MSG Good Friday OMIT [easterdate($Uy)+1] MSG Easter Monday REM First Friday in June SCANFROM -28 ADDOMIT MSG Randol Fawkes Labour Day OMIT [easterdate($Uy)+50] MSG Whit Monday OMIT 10 July MSG Independence Day -REM 11 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence Day (observed) -REM 12 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence Day (observed) +REM 11 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 10)) == 0] MSG Independence Day (observed) +REM 12 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 10)) == 6] MSG Independence Day (observed) REM First Monday in August SCANFROM -28 ADDOMIT MSG Emancipation Day REM Second Monday in October SCANFROM -28 ADDOMIT MSG National Heroes Day OMIT 25 December MSG Christmas Day OMIT 26 December MSG Boxing Day -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Boxing Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Christmas Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Boxing Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 6] MSG Boxing Day (observed) diff --git a/include/holidays/bw.rem b/include/holidays/bw.rem index 2412d9ba..de444d86 100644 --- a/include/holidays/bw.rem +++ b/include/holidays/bw.rem @@ -5,25 +5,25 @@ OMIT 1 January MSG New Year's Day OMIT 2 January MSG New Year's Day Holiday -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day Holiday (observed) -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG New Year's Day (observed) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 2)) == 0] MSG New Year's Day Holiday (observed) OMIT [easterdate($Uy)-2] MSG Good Friday OMIT [easterdate($Uy)-1] MSG Holy Saturday OMIT [easterdate($Uy)+1] MSG Easter Monday OMIT 1 May MSG Labour Day -REM 2 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Labour Day (observed) -REM 3 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Labour Day Holiday +REM 2 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Labour Day (observed) +REM 3 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 6] MSG Labour Day Holiday OMIT [easterdate($Uy)+39] MSG Ascension Day OMIT 1 July MSG Sir Seretse Khama Day -REM 2 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Sir Seretse Khama Day (observed) +REM 2 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 1)) == 0] MSG Sir Seretse Khama Day (observed) REM Third Monday in July SCANFROM -28 ADDOMIT MSG President's Day REM Tuesday 16 July ADDOMIT SCANFROM -28 MSG President's Day Holiday OMIT 30 September MSG Botswana Day OMIT 1 October MSG Botswana Day Holiday -REM 2 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Botswana Day Holiday (observed) -REM 2 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Botswana Day (observed) +REM 2 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 1)) == 0] MSG Botswana Day Holiday (observed) +REM 2 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 9, 30)) == 0] MSG Botswana Day (observed) OMIT 25 December MSG Christmas Day OMIT 26 December MSG Boxing Day -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Boxing Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Christmas Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Boxing Day Holiday +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 6] MSG Boxing Day Holiday diff --git a/include/holidays/bz.rem b/include/holidays/bz.rem index deaa98a1..234e133b 100644 --- a/include/holidays/bz.rem +++ b/include/holidays/bz.rem @@ -4,38 +4,38 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) OMIT 15 January MSG George Price Day -REM 16 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG George Price Day (observed) -REM 6 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG National Heroes and Benefactors Day (observed) -REM 7 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG National Heroes and Benefactors Day (observed) -REM 8 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG National Heroes and Benefactors Day (observed) +REM 16 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 15)) == 0] MSG George Price Day (observed) +REM 6 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 9)) == 4] MSG National Heroes and Benefactors Day (observed) +REM 7 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 9)) == 3] MSG National Heroes and Benefactors Day (observed) +REM 8 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 9)) == 2] MSG National Heroes and Benefactors Day (observed) OMIT 9 March MSG National Heroes and Benefactors Day -REM 10 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG National Heroes and Benefactors Day (observed) -REM 12 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG National Heroes and Benefactors Day (observed) +REM 10 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 9)) == 0] MSG National Heroes and Benefactors Day (observed) +REM 12 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 9)) == 5] MSG National Heroes and Benefactors Day (observed) OMIT [easterdate($Uy)-2] MSG Good Friday OMIT [easterdate($Uy)-1] MSG Holy Saturday OMIT [easterdate($Uy)+1] MSG Easter Monday OMIT 1 May MSG Labour Day -REM 2 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Labour Day (observed) -REM 29 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Emancipation Day (observed) -REM 30 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Emancipation Day (observed) -REM 31 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Emancipation Day (observed) +REM 2 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Labour Day (observed) +REM 29 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 1)) == 4] MSG Emancipation Day (observed) +REM 30 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 1)) == 3] MSG Emancipation Day (observed) +REM 31 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 1)) == 2] MSG Emancipation Day (observed) OMIT 1 August MSG Emancipation Day -REM 2 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Emancipation Day (observed) -REM 4 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Emancipation Day (observed) +REM 2 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 1)) == 0] MSG Emancipation Day (observed) +REM 4 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 1)) == 5] MSG Emancipation Day (observed) OMIT 10 September MSG Saint George's Caye Day -REM 11 September SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Saint George's Caye Day (observed) +REM 11 September SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 9, 10)) == 0] MSG Saint George's Caye Day (observed) OMIT 21 September MSG Independence Day -REM 22 September SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence Day (observed) -REM 9 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Indigenous Peoples' Resistance Day (observed) -REM 10 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Indigenous Peoples' Resistance Day (observed) -REM 11 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Indigenous Peoples' Resistance Day (observed) +REM 22 September SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 9, 21)) == 0] MSG Independence Day (observed) +REM 9 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 12)) == 4] MSG Indigenous Peoples' Resistance Day (observed) +REM 10 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 12)) == 3] MSG Indigenous Peoples' Resistance Day (observed) +REM 11 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 12)) == 2] MSG Indigenous Peoples' Resistance Day (observed) OMIT 12 October MSG Indigenous Peoples' Resistance Day -REM 13 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Indigenous Peoples' Resistance Day (observed) -REM 15 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Indigenous Peoples' Resistance Day (observed) +REM 13 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 12)) == 0] MSG Indigenous Peoples' Resistance Day (observed) +REM 15 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 12)) == 5] MSG Indigenous Peoples' Resistance Day (observed) OMIT 19 November MSG Garifuna Settlement Day -REM 20 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Garifuna Settlement Day (observed) +REM 20 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 19)) == 0] MSG Garifuna Settlement Day (observed) OMIT 25 December MSG Christmas Day OMIT 26 December MSG Boxing Day -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Boxing Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed) diff --git a/include/holidays/ca.rem b/include/holidays/ca.rem index 539ce9b8..dabbf6a6 100644 --- a/include/holidays/ca.rem +++ b/include/holidays/ca.rem @@ -9,29 +9,27 @@ # For region-specific holidays, you need to include # one of the regional *.rem files in the directory # [$SysInclude]/ca/ -# -# Hand-Edited OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed) OMIT [easterdate($Uy)-2] MSG Good Friday REM Monday 18 May ADDOMIT SCANFROM -28 MSG Victoria Day OMIT 1 July MSG Canada Day -REM 2 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Canada Day (observed) -REM 3 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Canada Day (observed) +REM 2 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 1)) == 0] MSG Canada Day (observed) +REM 3 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 1)) == 6] MSG Canada Day (observed) REM First Monday in September SCANFROM -28 ADDOMIT MSG Labour Day OMIT 30 September MSG National Day for Truth and Reconciliation -REM 1 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG National Day for Truth and Reconciliation (observed) -REM 2 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG National Day for Truth and Reconciliation (observed) +REM 1 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 9, 30)) == 0] MSG National Day for Truth and Reconciliation (observed) +REM 2 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 9, 30)) == 6] MSG National Day for Truth and Reconciliation (observed) REM Second Monday in October SCANFROM -28 ADDOMIT MSG Thanksgiving Day OMIT 11 November MSG Remembrance Day -REM 12 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Remembrance Day (observed) -REM 13 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Remembrance Day (observed) +REM 12 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 11)) == 0] MSG Remembrance Day (observed) +REM 13 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 11)) == 6] MSG Remembrance Day (observed) OMIT 25 December MSG Christmas Day OMIT 26 December MSG Boxing Day -REM 26 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Boxing Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Boxing Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Boxing Day (observed) +REM 26 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 1] MSG Boxing Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 6] MSG Boxing Day (observed) diff --git a/include/holidays/ca/qc.rem b/include/holidays/ca/qc.rem index 0c706586..e26f1804 100644 --- a/include/holidays/ca/qc.rem +++ b/include/holidays/ca/qc.rem @@ -11,5 +11,5 @@ REM Monday 18 May ADDOMIT SCANFROM -28 MSG National Patriots' Day OMIT 24 June MSG Saint Jean Baptiste Day -REM 25 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Saint Jean Baptiste Day (observed) +REM 25 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 24)) == 0] MSG Saint Jean Baptiste Day (observed) REM [easterdate($Uy)+1] MSG Easter Monday diff --git a/include/holidays/cl.rem b/include/holidays/cl.rem index b4ae3fa6..6d2a621f 100644 --- a/include/holidays/cl.rem +++ b/include/holidays/cl.rem @@ -16,26 +16,26 @@ OMIT [easterdate($Uy)-2] MSG Viernes Santo OMIT [easterdate($Uy)-1] MSG Sábado Santo OMIT 1 May MSG Día Nacional del Trabajo OMIT 21 May MSG Día de las Glorias Navales -REM 26 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG San Pedro y San Pablo -REM 27 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG San Pedro y San Pablo -REM 28 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG San Pedro y San Pablo +REM 26 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 29)) == 4] MSG San Pedro y San Pablo +REM 27 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 29)) == 3] MSG San Pedro y San Pablo +REM 28 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 29)) == 2] MSG San Pedro y San Pablo OMIT 29 June MSG San Pedro y San Pablo -REM 2 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG San Pedro y San Pablo +REM 2 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 29)) == 5] MSG San Pedro y San Pablo OMIT 16 July MSG Virgen del Carmen OMIT 15 August MSG Asunción de la Virgen OMIT 17 September MSG Fiestas Patrias OMIT 18 September MSG Día de la Independencia OMIT 19 September MSG Día de las Glorias del Ejército OMIT 20 September MSG Fiestas Patrias -REM 9 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día del Encuentro de dos Mundos -REM 10 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día del Encuentro de dos Mundos -REM 11 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día del Encuentro de dos Mundos +REM 9 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 12)) == 4] MSG Día del Encuentro de dos Mundos +REM 10 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 12)) == 3] MSG Día del Encuentro de dos Mundos +REM 11 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 12)) == 2] MSG Día del Encuentro de dos Mundos OMIT 12 October MSG Día del Encuentro de dos Mundos -REM 15 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día del Encuentro de dos Mundos -REM 27 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Día Nacional de las Iglesias Evangélicas y Protestantes +REM 15 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 12)) == 5] MSG Día del Encuentro de dos Mundos +REM 27 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 31)) == 2] MSG Día Nacional de las Iglesias Evangélicas y Protestantes OMIT 31 October MSG Día Nacional de las Iglesias Evangélicas y Protestantes OMIT 1 November MSG Día de Todos los Santos -REM 2 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Día Nacional de las Iglesias Evangélicas y Protestantes +REM 2 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 31)) == 3] MSG Día Nacional de las Iglesias Evangélicas y Protestantes OMIT 8 December MSG La Inmaculada Concepción OMIT 25 December MSG Navidad REM 31 December MSG Feriado bancario diff --git a/include/holidays/co.rem b/include/holidays/co.rem index 362a716e..6cc35f21 100644 --- a/include/holidays/co.rem +++ b/include/holidays/co.rem @@ -5,79 +5,79 @@ OMIT 1 January MSG Año Nuevo OMIT 6 January MSG Día de los Reyes Magos -REM 7 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de los Reyes Magos (observado) -REM 8 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de los Reyes Magos (observado) -REM 9 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de los Reyes Magos (observado) -REM 10 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de los Reyes Magos (observado) -REM 11 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de los Reyes Magos (observado) -REM 12 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de los Reyes Magos (observado) +REM 7 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 6)) == 0] MSG Día de los Reyes Magos (observado) +REM 8 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 6)) == 6] MSG Día de los Reyes Magos (observado) +REM 9 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 6)) == 5] MSG Día de los Reyes Magos (observado) +REM 10 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 6)) == 4] MSG Día de los Reyes Magos (observado) +REM 11 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 6)) == 3] MSG Día de los Reyes Magos (observado) +REM 12 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 6)) == 2] MSG Día de los Reyes Magos (observado) OMIT 19 March MSG Día de San José -REM 20 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de San José (observado) -REM 21 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de San José (observado) -REM 22 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de San José (observado) -REM 23 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de San José (observado) -REM 24 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de San José (observado) -REM 25 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de San José (observado) +REM 20 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 19)) == 0] MSG Día de San José (observado) +REM 21 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 19)) == 6] MSG Día de San José (observado) +REM 22 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 19)) == 5] MSG Día de San José (observado) +REM 23 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 19)) == 4] MSG Día de San José (observado) +REM 24 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 19)) == 3] MSG Día de San José (observado) +REM 25 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 19)) == 2] MSG Día de San José (observado) OMIT [easterdate($Uy)-3] MSG Jueves Santo OMIT [easterdate($Uy)-2] MSG Viernes Santo OMIT 1 May MSG Día del Trabajo -REM 10 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Ascensión del señor (observado) -REM 11 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Ascensión del señor (observado) -REM 12 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Ascensión del señor (observado) -REM 13 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Ascensión del señor (observado) -REM 14 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Ascensión del señor (observado) -REM 15 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Ascensión del señor (observado) +REM 10 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 9)) == 0] MSG Ascensión del señor (observado) +REM 11 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 9)) == 6] MSG Ascensión del señor (observado) +REM 12 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 9)) == 5] MSG Ascensión del señor (observado) +REM 13 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 9)) == 4] MSG Ascensión del señor (observado) +REM 14 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 9)) == 3] MSG Ascensión del señor (observado) +REM 15 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 9)) == 2] MSG Ascensión del señor (observado) OMIT [easterdate($Uy)+39] MSG Ascensión del señor -REM 31 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Corpus Christi (observado) -REM 1 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Corpus Christi (observado) -REM 2 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Corpus Christi (observado) -REM 3 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Corpus Christi (observado) -REM 4 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Corpus Christi (observado) -REM 5 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Corpus Christi (observado) -REM 8 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Sagrado Corazón (observado) -REM 9 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Sagrado Corazón (observado) -REM 10 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Sagrado Corazón (observado) -REM 11 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Sagrado Corazón (observado) -REM 12 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Sagrado Corazón (observado) +REM 31 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 30)) == 0] MSG Corpus Christi (observado) +REM 1 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 30)) == 6] MSG Corpus Christi (observado) +REM 2 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 30)) == 5] MSG Corpus Christi (observado) +REM 3 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 30)) == 4] MSG Corpus Christi (observado) +REM 4 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 30)) == 3] MSG Corpus Christi (observado) +REM 5 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 30)) == 2] MSG Corpus Christi (observado) +REM 8 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 7)) == 0] MSG Sagrado Corazón (observado) +REM 9 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 7)) == 6] MSG Sagrado Corazón (observado) +REM 10 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 7)) == 5] MSG Sagrado Corazón (observado) +REM 11 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 7)) == 4] MSG Sagrado Corazón (observado) +REM 12 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 7)) == 3] MSG Sagrado Corazón (observado) OMIT [easterdate($Uy)+60] MSG Corpus Christi -REM 13 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Sagrado Corazón (observado) +REM 13 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 7)) == 2] MSG Sagrado Corazón (observado) OMIT [easterdate($Uy)+68] MSG Sagrado Corazón OMIT 29 June MSG San Pedro y San Pablo -REM 30 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG San Pedro y San Pablo (observado) -REM 1 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG San Pedro y San Pablo (observado) -REM 2 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG San Pedro y San Pablo (observado) -REM 3 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG San Pedro y San Pablo (observado) -REM 4 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG San Pedro y San Pablo (observado) -REM 5 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG San Pedro y San Pablo (observado) +REM 30 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 29)) == 0] MSG San Pedro y San Pablo (observado) +REM 1 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 29)) == 6] MSG San Pedro y San Pablo (observado) +REM 2 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 29)) == 5] MSG San Pedro y San Pablo (observado) +REM 3 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 29)) == 4] MSG San Pedro y San Pablo (observado) +REM 4 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 29)) == 3] MSG San Pedro y San Pablo (observado) +REM 5 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 29)) == 2] MSG San Pedro y San Pablo (observado) OMIT 20 July MSG Día de la Independencia OMIT 7 August MSG Batalla de Boyacá OMIT 15 August MSG La Asunción -REM 16 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG La Asunción (observado) -REM 17 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG La Asunción (observado) -REM 18 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG La Asunción (observado) -REM 19 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG La Asunción (observado) -REM 20 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG La Asunción (observado) -REM 21 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG La Asunción (observado) +REM 16 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 15)) == 0] MSG La Asunción (observado) +REM 17 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 15)) == 6] MSG La Asunción (observado) +REM 18 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 15)) == 5] MSG La Asunción (observado) +REM 19 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 15)) == 4] MSG La Asunción (observado) +REM 20 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 15)) == 3] MSG La Asunción (observado) +REM 21 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 15)) == 2] MSG La Asunción (observado) OMIT 12 October MSG Día de la Raza -REM 13 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de la Raza (observado) -REM 14 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de la Raza (observado) -REM 15 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de la Raza (observado) -REM 16 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de la Raza (observado) -REM 17 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de la Raza (observado) -REM 18 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de la Raza (observado) +REM 13 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 12)) == 0] MSG Día de la Raza (observado) +REM 14 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 12)) == 6] MSG Día de la Raza (observado) +REM 15 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 12)) == 5] MSG Día de la Raza (observado) +REM 16 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 12)) == 4] MSG Día de la Raza (observado) +REM 17 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 12)) == 3] MSG Día de la Raza (observado) +REM 18 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 12)) == 2] MSG Día de la Raza (observado) OMIT 1 November MSG Día de Todos los Santos -REM 2 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de Todos los Santos (observado) -REM 3 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de Todos los Santos (observado) -REM 4 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de Todos los Santos (observado) -REM 5 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de Todos los Santos (observado) -REM 6 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de Todos los Santos (observado) -REM 7 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de Todos los Santos (observado) +REM 2 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 1)) == 0] MSG Día de Todos los Santos (observado) +REM 3 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 1)) == 6] MSG Día de Todos los Santos (observado) +REM 4 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 1)) == 5] MSG Día de Todos los Santos (observado) +REM 5 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 1)) == 4] MSG Día de Todos los Santos (observado) +REM 6 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 1)) == 3] MSG Día de Todos los Santos (observado) +REM 7 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 1)) == 2] MSG Día de Todos los Santos (observado) OMIT 11 November MSG Independencia de Cartagena -REM 12 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independencia de Cartagena (observado) -REM 13 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independencia de Cartagena (observado) -REM 14 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independencia de Cartagena (observado) -REM 15 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independencia de Cartagena (observado) -REM 16 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independencia de Cartagena (observado) -REM 17 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independencia de Cartagena (observado) +REM 12 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 11)) == 0] MSG Independencia de Cartagena (observado) +REM 13 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 11)) == 6] MSG Independencia de Cartagena (observado) +REM 14 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 11)) == 5] MSG Independencia de Cartagena (observado) +REM 15 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 11)) == 4] MSG Independencia de Cartagena (observado) +REM 16 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 11)) == 3] MSG Independencia de Cartagena (observado) +REM 17 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 11)) == 2] MSG Independencia de Cartagena (observado) OMIT 8 December MSG La Inmaculada Concepción OMIT 25 December MSG Navidad diff --git a/include/holidays/cr.rem b/include/holidays/cr.rem index 245f8cb8..e8e6e2d8 100644 --- a/include/holidays/cr.rem +++ b/include/holidays/cr.rem @@ -4,30 +4,30 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG Año Nuevo -REM 9 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de Juan Santamaría (observado) -REM 10 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de Juan Santamaría (observado) +REM 9 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 11)) == 3] MSG Día de Juan Santamaría (observado) +REM 10 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 11)) == 2] MSG Día de Juan Santamaría (observado) OMIT 11 April MSG Día de Juan Santamaría OMIT [easterdate($Uy)-3] MSG Jueves Santo -REM 12 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de Juan Santamaría (observado) +REM 12 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 11)) == 0] MSG Día de Juan Santamaría (observado) OMIT [easterdate($Uy)-2] MSG Viernes Santo -REM 13 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de Juan Santamaría (observado) -REM 14 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de Juan Santamaría (observado) -REM 15 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de Juan Santamaría (observado) +REM 13 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 11)) == 6] MSG Día de Juan Santamaría (observado) +REM 14 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 11)) == 5] MSG Día de Juan Santamaría (observado) +REM 15 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 11)) == 4] MSG Día de Juan Santamaría (observado) OMIT 1 May MSG Día Internacional del Trabajo -REM 23 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Anexión del Partido de Nicoya a Costa Rica (observado) -REM 24 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Anexión del Partido de Nicoya a Costa Rica (observado) +REM 23 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 25)) == 3] MSG Anexión del Partido de Nicoya a Costa Rica (observado) +REM 24 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 25)) == 2] MSG Anexión del Partido de Nicoya a Costa Rica (observado) OMIT 25 July MSG Anexión del Partido de Nicoya a Costa Rica -REM 26 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Anexión del Partido de Nicoya a Costa Rica (observado) -REM 27 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Anexión del Partido de Nicoya a Costa Rica (observado) -REM 28 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Anexión del Partido de Nicoya a Costa Rica (observado) -REM 29 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Anexión del Partido de Nicoya a Costa Rica (observado) -REM 13 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de la Madre (observado) -REM 14 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de la Madre (observado) +REM 26 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 25)) == 0] MSG Anexión del Partido de Nicoya a Costa Rica (observado) +REM 27 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 25)) == 6] MSG Anexión del Partido de Nicoya a Costa Rica (observado) +REM 28 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 25)) == 5] MSG Anexión del Partido de Nicoya a Costa Rica (observado) +REM 29 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 25)) == 4] MSG Anexión del Partido de Nicoya a Costa Rica (observado) +REM 13 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 15)) == 3] MSG Día de la Madre (observado) +REM 14 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 15)) == 2] MSG Día de la Madre (observado) OMIT 15 August MSG Día de la Madre -REM 16 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de la Madre (observado) -REM 17 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de la Madre (observado) -REM 18 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de la Madre (observado) -REM 19 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de la Madre (observado) +REM 16 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 15)) == 0] MSG Día de la Madre (observado) +REM 17 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 15)) == 6] MSG Día de la Madre (observado) +REM 18 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 15)) == 5] MSG Día de la Madre (observado) +REM 19 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 15)) == 4] MSG Día de la Madre (observado) OMIT 15 September MSG Día de la Independencia OMIT 25 December MSG Navidad REM 2 August MSG Fiesta de Nuestra Señora de los Ángeles diff --git a/include/holidays/cu.rem b/include/holidays/cu.rem index a7b930de..c231c00b 100644 --- a/include/holidays/cu.rem +++ b/include/holidays/cu.rem @@ -7,11 +7,11 @@ OMIT 1 January MSG Triunfo de la Revolución OMIT 2 January MSG Día de la Victoria OMIT [easterdate($Uy)-2] MSG Viernes Santo OMIT 1 May MSG Día Internacional de los Trabajadores -REM 2 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día Internacional de los Trabajadores (observado) +REM 2 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Día Internacional de los Trabajadores (observado) OMIT 25 July MSG Conmemoración del asalto a Moncada OMIT 26 July MSG Día de la Rebeldía Nacional OMIT 27 July MSG Conmemoración del asalto a Moncada OMIT 10 October MSG Inicio de las Guerras de Independencia -REM 11 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Inicio de las Guerras de Independencia (observado) +REM 11 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 10)) == 0] MSG Inicio de las Guerras de Independencia (observado) OMIT 25 December MSG Día de Navidad OMIT 31 December MSG Fiesta de Fin de Año diff --git a/include/holidays/dm.rem b/include/holidays/dm.rem index 87c05d34..6754be11 100644 --- a/include/holidays/dm.rem +++ b/include/holidays/dm.rem @@ -4,7 +4,7 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) OMIT [easterdate($Uy)-48] MSG Carnival Monday OMIT [easterdate($Uy)-47] MSG Carnival Tuesday OMIT [easterdate($Uy)-2] MSG Good Friday @@ -14,9 +14,9 @@ OMIT [easterdate($Uy)+50] MSG Whit Monday REM First Monday in August SCANFROM -28 ADDOMIT MSG Emancipation Day OMIT 3 November MSG Independence Day OMIT 4 November MSG National Day of Community Service -REM 5 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG National Day of Community Service (observed) -REM 5 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Independence Day (observed) +REM 5 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 3)) == 0] MSG Independence Day (observed) +REM 5 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 4)) == 0] MSG National Day of Community Service (observed) OMIT 25 December MSG Christmas Day OMIT 26 December MSG Boxing Day -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Boxing Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed) diff --git a/include/holidays/do.rem b/include/holidays/do.rem index 9371182a..6092f895 100644 --- a/include/holidays/do.rem +++ b/include/holidays/do.rem @@ -4,31 +4,31 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG Año Nuevo -REM 4 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de los Santos Reyes -REM 5 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de los Santos Reyes +REM 4 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 6)) == 3] MSG Día de los Santos Reyes +REM 5 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 6)) == 2] MSG Día de los Santos Reyes OMIT 6 January MSG Día de los Santos Reyes -REM 9 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de los Santos Reyes -REM 10 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de los Santos Reyes +REM 9 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 6)) == 5] MSG Día de los Santos Reyes +REM 10 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 6)) == 4] MSG Día de los Santos Reyes OMIT 21 January MSG Día de la Altagracia -REM 24 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de Duarte -REM 25 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de Duarte +REM 24 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 26)) == 3] MSG Día de Duarte +REM 25 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 26)) == 2] MSG Día de Duarte OMIT 26 January MSG Día de Duarte -REM 29 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de Duarte -REM 30 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de Duarte +REM 29 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 26)) == 5] MSG Día de Duarte +REM 30 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 26)) == 4] MSG Día de Duarte OMIT 27 February MSG Día de Independencia OMIT [easterdate($Uy)-2] MSG Viernes Santo -REM 29 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día del Trabajo -REM 30 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día del Trabajo +REM 29 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 3] MSG Día del Trabajo +REM 30 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 2] MSG Día del Trabajo OMIT 1 May MSG Día del Trabajo -REM 2 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día del Trabajo -REM 4 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día del Trabajo -REM 5 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día del Trabajo +REM 2 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Día del Trabajo +REM 4 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 5] MSG Día del Trabajo +REM 5 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 4] MSG Día del Trabajo OMIT [easterdate($Uy)+60] MSG Corpus Christi OMIT 16 August MSG Día de la Restauración OMIT 24 September MSG Día de las Mercedes -REM 4 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de la Constitución -REM 5 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de la Constitución +REM 4 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 6)) == 3] MSG Día de la Constitución +REM 5 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 6)) == 2] MSG Día de la Constitución OMIT 6 November MSG Día de la Constitución -REM 9 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de la Constitución -REM 10 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de la Constitución +REM 9 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 6)) == 5] MSG Día de la Constitución +REM 10 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 6)) == 4] MSG Día de la Constitución OMIT 25 December MSG Día de Navidad diff --git a/include/holidays/ec.rem b/include/holidays/ec.rem index fba47d69..3b526cad 100644 --- a/include/holidays/ec.rem +++ b/include/holidays/ec.rem @@ -4,43 +4,43 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG Año Nuevo -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Año Nuevo (observado) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG Año Nuevo (observado) OMIT [easterdate($Uy)-48] MSG Carnaval OMIT [easterdate($Uy)-47] MSG Carnaval OMIT [easterdate($Uy)-2] MSG Viernes Santo -REM 30 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día del Trabajo (observado) -REM 30 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Día del Trabajo (observado) +REM 30 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 2] MSG Día del Trabajo (observado) +REM 30 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 6] MSG Día del Trabajo (observado) OMIT 1 May MSG Día del Trabajo -REM 2 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día del Trabajo (observado) -REM 2 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Día del Trabajo (observado) -REM 3 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Día del Trabajo (observado) -REM 23 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Batalla de Pichincha (observado) -REM 23 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Batalla de Pichincha (observado) +REM 2 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Día del Trabajo (observado) +REM 2 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 4] MSG Día del Trabajo (observado) +REM 3 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 3] MSG Día del Trabajo (observado) +REM 23 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 24)) == 2] MSG Batalla de Pichincha (observado) +REM 23 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 24)) == 6] MSG Batalla de Pichincha (observado) OMIT 24 May MSG Batalla de Pichincha -REM 25 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Batalla de Pichincha (observado) -REM 25 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Batalla de Pichincha (observado) -REM 26 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Batalla de Pichincha (observado) -REM 9 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Primer Grito de Independencia (observado) -REM 9 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Primer Grito de Independencia (observado) +REM 25 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 24)) == 0] MSG Batalla de Pichincha (observado) +REM 25 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 24)) == 4] MSG Batalla de Pichincha (observado) +REM 26 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 24)) == 3] MSG Batalla de Pichincha (observado) +REM 9 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 10)) == 2] MSG Primer Grito de Independencia (observado) +REM 9 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 10)) == 6] MSG Primer Grito de Independencia (observado) OMIT 10 August MSG Primer Grito de Independencia -REM 11 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Primer Grito de Independencia (observado) -REM 11 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Primer Grito de Independencia (observado) -REM 12 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Primer Grito de Independencia (observado) -REM 8 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independencia de Guayaquil (observado) -REM 8 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Independencia de Guayaquil (observado) +REM 11 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 10)) == 0] MSG Primer Grito de Independencia (observado) +REM 11 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 10)) == 4] MSG Primer Grito de Independencia (observado) +REM 12 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 10)) == 3] MSG Primer Grito de Independencia (observado) +REM 8 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 9)) == 2] MSG Independencia de Guayaquil (observado) +REM 8 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 9)) == 6] MSG Independencia de Guayaquil (observado) OMIT 9 October MSG Independencia de Guayaquil -REM 10 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independencia de Guayaquil (observado) -REM 10 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Independencia de Guayaquil (observado) -REM 11 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Independencia de Guayaquil (observado) -REM 1 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de los Difuntos (observado) -REM 1 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Día de los Difuntos (observado) +REM 10 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 9)) == 0] MSG Independencia de Guayaquil (observado) +REM 10 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 9)) == 4] MSG Independencia de Guayaquil (observado) +REM 11 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 9)) == 3] MSG Independencia de Guayaquil (observado) +REM 1 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 2)) == 2] MSG Día de los Difuntos (observado) +REM 1 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 2)) == 6] MSG Día de los Difuntos (observado) OMIT 2 November MSG Día de los Difuntos OMIT 3 November MSG Independencia de Cuenca -REM 4 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independencia de Cuenca (observado) -REM 4 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Día de los Difuntos (observado) -REM 4 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Independencia de Cuenca (observado) -REM 5 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Independencia de Cuenca (observado) -REM 24 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Día de Navidad (observado) +REM 4 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 2)) == 3] MSG Día de los Difuntos (observado) +REM 4 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 3)) == 0] MSG Independencia de Cuenca (observado) +REM 4 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 3)) == 4] MSG Independencia de Cuenca (observado) +REM 5 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 3)) == 3] MSG Independencia de Cuenca (observado) +REM 24 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Día de Navidad (observado) OMIT 25 December MSG Día de Navidad -REM 26 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día de Navidad (observado) -REM 31 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Año Nuevo (observado) +REM 26 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Día de Navidad (observado) +REM 31 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG Año Nuevo (observado) diff --git a/include/holidays/es/an.rem b/include/holidays/es/an.rem index d0674b04..27e707dc 100644 --- a/include/holidays/es/an.rem +++ b/include/holidays/es/an.rem @@ -10,7 +10,7 @@ # also include [$SysInclude]/es.rem OMIT 28 February MSG Día de Andalucia -REM 29 February SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Lunes siguiente a Día de Andalucia +REM 29 February SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 2, 28)) == 0] MSG Lunes siguiente a Día de Andalucia OMIT [easterdate($Uy)-3] MSG Jueves Santo OMIT 8 December MSG Inmaculada Concepción -REM 9 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Lunes siguiente a Inmaculada Concepción +REM 9 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 8)) == 0] MSG Lunes siguiente a Inmaculada Concepción diff --git a/include/holidays/es/ar.rem b/include/holidays/es/ar.rem index 9c8fdc5f..0ff3f781 100644 --- a/include/holidays/es/ar.rem +++ b/include/holidays/es/ar.rem @@ -11,6 +11,6 @@ OMIT [easterdate($Uy)-3] MSG Jueves Santo OMIT 23 April MSG Día de San Jorge -REM 24 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Lunes siguiente a Día de San Jorge +REM 24 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 23)) == 0] MSG Lunes siguiente a Día de San Jorge OMIT 8 December MSG Inmaculada Concepción -REM 9 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Lunes siguiente a Inmaculada Concepción +REM 9 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 8)) == 0] MSG Lunes siguiente a Inmaculada Concepción diff --git a/include/holidays/es/as.rem b/include/holidays/es/as.rem index dc15d692..6df0f108 100644 --- a/include/holidays/es/as.rem +++ b/include/holidays/es/as.rem @@ -11,6 +11,6 @@ OMIT [easterdate($Uy)-3] MSG Jueves Santo OMIT 8 September MSG Día de Asturias -REM 9 September SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Lunes siguiente a Día de Asturias +REM 9 September SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 9, 8)) == 0] MSG Lunes siguiente a Día de Asturias OMIT 8 December MSG Inmaculada Concepción -REM 9 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Lunes siguiente a Inmaculada Concepción +REM 9 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 8)) == 0] MSG Lunes siguiente a Inmaculada Concepción diff --git a/include/holidays/es/cl.rem b/include/holidays/es/cl.rem index f8c16b59..13c47a92 100644 --- a/include/holidays/es/cl.rem +++ b/include/holidays/es/cl.rem @@ -11,6 +11,6 @@ OMIT [easterdate($Uy)-3] MSG Jueves Santo OMIT 23 April MSG Fiesta de Castilla y León -REM 24 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Lunes siguiente a Fiesta de Castilla y León +REM 24 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 23)) == 0] MSG Lunes siguiente a Fiesta de Castilla y León OMIT 8 December MSG Inmaculada Concepción -REM 9 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Lunes siguiente a Inmaculada Concepción +REM 9 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 8)) == 0] MSG Lunes siguiente a Inmaculada Concepción diff --git a/include/holidays/es/cn.rem b/include/holidays/es/cn.rem index 2a6dce7a..7948a358 100644 --- a/include/holidays/es/cn.rem +++ b/include/holidays/es/cn.rem @@ -11,4 +11,4 @@ OMIT [easterdate($Uy)-3] MSG Jueves Santo OMIT 30 May MSG Día de Canarias -REM 31 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Lunes siguiente a Día de Canarias +REM 31 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 30)) == 0] MSG Lunes siguiente a Día de Canarias diff --git a/include/holidays/es/ex.rem b/include/holidays/es/ex.rem index 2682aca3..aed3a031 100644 --- a/include/holidays/es/ex.rem +++ b/include/holidays/es/ex.rem @@ -12,4 +12,4 @@ OMIT [easterdate($Uy)-47] MSG Martes de Carnaval OMIT [easterdate($Uy)-3] MSG Jueves Santo OMIT 8 December MSG Inmaculada Concepción -REM 9 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Lunes siguiente a Inmaculada Concepción +REM 9 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 8)) == 0] MSG Lunes siguiente a Inmaculada Concepción diff --git a/include/holidays/es/mc.rem b/include/holidays/es/mc.rem index dac13fc9..81119f39 100644 --- a/include/holidays/es/mc.rem +++ b/include/holidays/es/mc.rem @@ -10,7 +10,7 @@ # also include [$SysInclude]/es.rem OMIT 19 March MSG San José -REM 20 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Lunes siguiente a San José +REM 20 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 19)) == 0] MSG Lunes siguiente a San José OMIT [easterdate($Uy)-3] MSG Jueves Santo OMIT 8 December MSG Inmaculada Concepción -REM 9 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Lunes siguiente a Inmaculada Concepción +REM 9 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 8)) == 0] MSG Lunes siguiente a Inmaculada Concepción diff --git a/include/holidays/es/md.rem b/include/holidays/es/md.rem index 0fd48491..4f63e52b 100644 --- a/include/holidays/es/md.rem +++ b/include/holidays/es/md.rem @@ -11,5 +11,5 @@ OMIT [easterdate($Uy)-3] MSG Jueves Santo OMIT 2 May MSG Fiesta de la Comunidad de Madrid -REM 3 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Lunes siguiente a Fiesta de la Comunidad de Madrid +REM 3 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 2)) == 0] MSG Lunes siguiente a Fiesta de la Comunidad de Madrid OMIT 25 July MSG Santiago Apóstol diff --git a/include/holidays/es/ml.rem b/include/holidays/es/ml.rem index 736fe8a6..fc3f474d 100644 --- a/include/holidays/es/ml.rem +++ b/include/holidays/es/ml.rem @@ -11,4 +11,4 @@ OMIT [easterdate($Uy)-3] MSG Jueves Santo OMIT 8 December MSG Inmaculada Concepción -REM 9 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Lunes siguiente a Inmaculada Concepción +REM 9 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 8)) == 0] MSG Lunes siguiente a Inmaculada Concepción diff --git a/include/holidays/es/ri.rem b/include/holidays/es/ri.rem index 0c19f290..1fda645a 100644 --- a/include/holidays/es/ri.rem +++ b/include/holidays/es/ri.rem @@ -12,4 +12,4 @@ OMIT [easterdate($Uy)-3] MSG Jueves Santo OMIT [easterdate($Uy)+1] MSG Lunes de Pascua OMIT 9 June MSG Día de La Rioja -REM 10 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Lunes siguiente a Día de La Rioja +REM 10 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 9)) == 0] MSG Lunes siguiente a Día de La Rioja diff --git a/include/holidays/gb.rem b/include/holidays/gb.rem index b1b67b1a..ec1e4c47 100644 --- a/include/holidays/gb.rem +++ b/include/holidays/gb.rem @@ -11,14 +11,14 @@ # [$SysInclude]/gb/ OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed) OMIT [easterdate($Uy)-2] MSG Good Friday REM First Monday in May SCANFROM -28 ADDOMIT MSG May Day REM Last Monday in May SCANFROM -28 ADDOMIT MSG Spring Bank Holiday OMIT 25 December MSG Christmas Day OMIT 26 December MSG Boxing Day -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Christmas Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Boxing Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Boxing Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 6] MSG Boxing Day (observed) diff --git a/include/holidays/gb/nir.rem b/include/holidays/gb/nir.rem index 80585bd5..5f24666b 100644 --- a/include/holidays/gb/nir.rem +++ b/include/holidays/gb/nir.rem @@ -10,10 +10,10 @@ # also include [$SysInclude]/gb.rem OMIT 17 March MSG Saint Patrick's Day -REM 18 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Saint Patrick's Day (observed) -REM 19 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Saint Patrick's Day (observed) +REM 18 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 17)) == 0] MSG Saint Patrick's Day (observed) +REM 19 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 17)) == 6] MSG Saint Patrick's Day (observed) OMIT [easterdate($Uy)+1] MSG Easter Monday OMIT 12 July MSG Battle of the Boyne -REM 13 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Battle of the Boyne (observed) -REM 14 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Battle of the Boyne (observed) +REM 13 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 12)) == 0] MSG Battle of the Boyne (observed) +REM 14 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 12)) == 6] MSG Battle of the Boyne (observed) REM Last Monday in August SCANFROM -28 ADDOMIT MSG Late Summer Bank Holiday diff --git a/include/holidays/gb/sct.rem b/include/holidays/gb/sct.rem index f6cedeb1..240416c1 100644 --- a/include/holidays/gb/sct.rem +++ b/include/holidays/gb/sct.rem @@ -10,10 +10,10 @@ # also include [$SysInclude]/gb.rem OMIT 2 January MSG New Year Holiday -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG New Year Holiday (observed) -REM 4 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year Holiday (observed) -REM 4 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG New Year Holiday (observed) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 2)) == 1] MSG New Year Holiday (observed) +REM 4 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 2)) == 0] MSG New Year Holiday (observed) +REM 4 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 2)) == 6] MSG New Year Holiday (observed) REM First Monday in August SCANFROM -28 ADDOMIT MSG Summer Bank Holiday OMIT 30 November MSG Saint Andrew's Day -REM 1 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Saint Andrew's Day (observed) -REM 2 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Saint Andrew's Day (observed) +REM 1 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 30)) == 0] MSG Saint Andrew's Day (observed) +REM 2 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 30)) == 6] MSG Saint Andrew's Day (observed) diff --git a/include/holidays/gh.rem b/include/holidays/gh.rem index 6f9572b9..4006dd7c 100644 --- a/include/holidays/gh.rem +++ b/include/holidays/gh.rem @@ -4,29 +4,29 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed) OMIT 7 January MSG Constitution Day -REM 8 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Constitution Day (observed) -REM 9 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Constitution Day (observed) +REM 8 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 7)) == 0] MSG Constitution Day (observed) +REM 9 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 7)) == 6] MSG Constitution Day (observed) OMIT 6 March MSG Independence Day -REM 7 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence Day (observed) -REM 8 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence Day (observed) +REM 7 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 6)) == 0] MSG Independence Day (observed) +REM 8 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 6)) == 6] MSG Independence Day (observed) OMIT [easterdate($Uy)-2] MSG Good Friday OMIT [easterdate($Uy)+1] MSG Easter Monday OMIT 1 May MSG May Day -REM 2 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG May Day (observed) -REM 3 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG May Day (observed) +REM 2 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG May Day (observed) +REM 3 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 6] MSG May Day (observed) OMIT 4 August MSG Founders' Day -REM 5 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Founders' Day (observed) -REM 6 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Founders' Day (observed) +REM 5 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 4)) == 0] MSG Founders' Day (observed) +REM 6 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 4)) == 6] MSG Founders' Day (observed) OMIT 21 September MSG Kwame Nkrumah Memorial Day -REM 22 September SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Kwame Nkrumah Memorial Day (observed) -REM 23 September SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Kwame Nkrumah Memorial Day (observed) +REM 22 September SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 9, 21)) == 0] MSG Kwame Nkrumah Memorial Day (observed) +REM 23 September SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 9, 21)) == 6] MSG Kwame Nkrumah Memorial Day (observed) REM First Friday in December SCANFROM -28 ADDOMIT MSG Farmer's Day OMIT 25 December MSG Christmas Day OMIT 26 December MSG Boxing Day -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Christmas Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Boxing Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Boxing Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 6] MSG Boxing Day (observed) diff --git a/include/holidays/gt.rem b/include/holidays/gt.rem index 8f1c6b41..08832501 100644 --- a/include/holidays/gt.rem +++ b/include/holidays/gt.rem @@ -8,13 +8,13 @@ OMIT [easterdate($Uy)-3] MSG Jueves Santo OMIT [easterdate($Uy)-2] MSG Viernes Santo OMIT [easterdate($Uy)-1] MSG Sabado Santo OMIT 1 May MSG Día del Trabajo -REM 28 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día del Ejército -REM 29 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día del Ejército +REM 28 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 30)) == 3] MSG Día del Ejército +REM 29 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 30)) == 2] MSG Día del Ejército OMIT 30 June MSG Día del Ejército -REM 1 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día del Ejército -REM 2 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día del Ejército -REM 3 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día del Ejército -REM 4 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Día del Ejército +REM 1 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 30)) == 0] MSG Día del Ejército +REM 2 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 30)) == 6] MSG Día del Ejército +REM 3 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 30)) == 5] MSG Día del Ejército +REM 4 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 30)) == 4] MSG Día del Ejército OMIT 15 August MSG Día de la Asunción OMIT 15 September MSG Día de la Independencia OMIT 20 October MSG Día de la Revolución diff --git a/include/holidays/gu.rem b/include/holidays/gu.rem index 5dace477..aefa9c22 100644 --- a/include/holidays/gu.rem +++ b/include/holidays/gu.rem @@ -4,30 +4,30 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) REM Third Monday in January SCANFROM -28 ADDOMIT MSG Martin Luther King Jr. Day REM Third Monday in February SCANFROM -28 ADDOMIT MSG Washington's Birthday REM First Monday in March SCANFROM -28 ADDOMIT MSG Guam Discovery Day OMIT [easterdate($Uy)-2] MSG Good Friday REM Last Monday in May SCANFROM -28 ADDOMIT MSG Memorial Day -REM 18 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Juneteenth National Independence Day (observed) +REM 18 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 19)) == 6] MSG Juneteenth National Independence Day (observed) OMIT 19 June MSG Juneteenth National Independence Day -REM 20 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Juneteenth National Independence Day (observed) -REM 3 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Independence Day (observed) +REM 20 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 19)) == 0] MSG Juneteenth National Independence Day (observed) +REM 3 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 4)) == 6] MSG Independence Day (observed) OMIT 4 July MSG Independence Day -REM 5 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence Day (observed) +REM 5 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 4)) == 0] MSG Independence Day (observed) OMIT 21 July MSG Liberation Day (Guam) REM First Monday in September SCANFROM -28 ADDOMIT MSG Labor Day OMIT 2 November MSG All Souls' Day -REM 10 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Veterans Day (observed) +REM 10 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 11)) == 6] MSG Veterans Day (observed) OMIT 11 November MSG Veterans Day -REM 12 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Veterans Day (observed) +REM 12 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 11)) == 0] MSG Veterans Day (observed) REM Fourth Thursday in November SCANFROM -28 ADDOMIT MSG Thanksgiving OMIT 8 December MSG Lady of Camarin Day -REM 24 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Christmas Day (observed) +REM 24 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed) OMIT 25 December MSG Christmas Day -REM 26 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) -REM 31 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG New Year's Day (observed) +REM 26 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 31 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed) REM 14 February MSG Valentine's Day REM 17 March MSG Saint Patrick's Day REM 31 October MSG Halloween diff --git a/include/holidays/im.rem b/include/holidays/im.rem index b2c7a827..a60aa71d 100644 --- a/include/holidays/im.rem +++ b/include/holidays/im.rem @@ -4,20 +4,20 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed) OMIT [easterdate($Uy)-2] MSG Good Friday OMIT [easterdate($Uy)+1] MSG Easter Monday REM First Monday in May SCANFROM -28 ADDOMIT MSG May Day REM Last Monday in May SCANFROM -28 ADDOMIT MSG Spring Bank Holiday REM First Friday in June SCANFROM -28 ADDOMIT MSG TT Bank Holiday OMIT 5 July MSG Tynwald Day -REM 6 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Tynwald Day -REM 7 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Tynwald Day +REM 6 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 5)) == 0] MSG Tynwald Day +REM 7 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 5)) == 6] MSG Tynwald Day REM Last Monday in August SCANFROM -28 ADDOMIT MSG Late Summer Bank Holiday OMIT 25 December MSG Christmas Day OMIT 26 December MSG Boxing Day -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Christmas Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Boxing Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Boxing Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 6] MSG Boxing Day (observed) diff --git a/include/holidays/jm.rem b/include/holidays/jm.rem index 98488eeb..0bc335ae 100644 --- a/include/holidays/jm.rem +++ b/include/holidays/jm.rem @@ -4,19 +4,19 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) OMIT [easterdate($Uy)-46] MSG Ash Wednesday OMIT [easterdate($Uy)-2] MSG Good Friday OMIT [easterdate($Uy)+1] MSG Easter Monday OMIT 23 May MSG National Labour Day -REM 24 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG National Labour Day (observed) -REM 25 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG National Labour Day (observed) +REM 24 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 23)) == 0] MSG National Labour Day (observed) +REM 25 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 23)) == 6] MSG National Labour Day (observed) OMIT 1 August MSG Emancipation Day -REM 2 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Emancipation Day (observed) +REM 2 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 1)) == 0] MSG Emancipation Day (observed) OMIT 6 August MSG Independence Day -REM 7 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence Day (observed) +REM 7 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 6)) == 0] MSG Independence Day (observed) REM Third Monday in October SCANFROM -28 ADDOMIT MSG National Heroes Day OMIT 25 December MSG Christmas Day OMIT 26 December MSG Boxing Day -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Boxing Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed) diff --git a/include/holidays/ke.rem b/include/holidays/ke.rem index d6b6d41a..dea3d0c3 100644 --- a/include/holidays/ke.rem +++ b/include/holidays/ke.rem @@ -4,20 +4,20 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) OMIT [easterdate($Uy)-2] MSG Good Friday OMIT [easterdate($Uy)+1] MSG Easter Monday OMIT 1 May MSG Labour Day -REM 2 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Labour Day (observed) +REM 2 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Labour Day (observed) OMIT 1 June MSG Madaraka Day -REM 2 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Madaraka Day (observed) +REM 2 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 1)) == 0] MSG Madaraka Day (observed) OMIT 10 October MSG Utamaduni Day -REM 11 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Utamaduni Day (observed) +REM 11 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 10)) == 0] MSG Utamaduni Day (observed) OMIT 20 October MSG Mashujaa Day -REM 21 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Mashujaa Day (observed) +REM 21 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 20)) == 0] MSG Mashujaa Day (observed) OMIT 12 December MSG Jamhuri Day -REM 13 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Jamhuri Day (observed) +REM 13 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 12)) == 0] MSG Jamhuri Day (observed) OMIT 25 December MSG Christmas Day OMIT 26 December MSG Boxing Day -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Boxing Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed) diff --git a/include/holidays/kn.rem b/include/holidays/kn.rem index 8b1c295d..e68ae059 100644 --- a/include/holidays/kn.rem +++ b/include/holidays/kn.rem @@ -5,8 +5,8 @@ OMIT 1 January MSG Carnival Day OMIT 2 January MSG Carnival Day - Last Lap -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Carnival Day - Last Lap (observed) -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Carnival Day (observed) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG Carnival Day (observed) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 2)) == 0] MSG Carnival Day - Last Lap (observed) OMIT [easterdate($Uy)-2] MSG Good Friday OMIT [easterdate($Uy)+1] MSG Easter Monday REM First Monday in May SCANFROM -28 ADDOMIT MSG Labour Day @@ -14,11 +14,11 @@ OMIT [easterdate($Uy)+50] MSG Whit Monday REM First Monday in August SCANFROM -28 ADDOMIT MSG Emancipation Day REM Tuesday 2 August ADDOMIT SCANFROM -28 MSG Culturama Day - Last Lap OMIT 16 September MSG National Heroes Day -REM 17 September SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG National Heroes Day (observed) +REM 17 September SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 9, 16)) == 0] MSG National Heroes Day (observed) OMIT 19 September MSG Independence Day -REM 20 September SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence Day (observed) +REM 20 September SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 9, 19)) == 0] MSG Independence Day (observed) OMIT 25 December MSG Christmas Day OMIT 26 December MSG Boxing Day -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Boxing Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed) REM 25 August MSG Kim Collins Day diff --git a/include/holidays/lv.rem b/include/holidays/lv.rem index 651e6640..cc3610f0 100644 --- a/include/holidays/lv.rem +++ b/include/holidays/lv.rem @@ -9,14 +9,14 @@ OMIT [easterdate($Uy)] MSG Lieldienas OMIT [easterdate($Uy)+1] MSG Otrās Lieldienas OMIT 1 May MSG Darba svētki OMIT 4 May MSG Latvijas Republikas Neatkarības atjaunošanas diena -REM 5 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Latvijas Republikas Neatkarības atjaunošanas diena (brīvdiena) -REM 6 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Latvijas Republikas Neatkarības atjaunošanas diena (brīvdiena) +REM 5 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 4)) == 0] MSG Latvijas Republikas Neatkarības atjaunošanas diena (brīvdiena) +REM 6 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 4)) == 6] MSG Latvijas Republikas Neatkarības atjaunošanas diena (brīvdiena) REM Second Sunday in May SCANFROM -28 ADDOMIT MSG Mātes diena OMIT 23 June MSG Līgo diena OMIT 24 June MSG Jāņu diena OMIT 18 November MSG Latvijas Republikas proklamēšanas diena -REM 19 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Latvijas Republikas proklamēšanas diena (brīvdiena) -REM 20 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Latvijas Republikas proklamēšanas diena (brīvdiena) +REM 19 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 18)) == 0] MSG Latvijas Republikas proklamēšanas diena (brīvdiena) +REM 20 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 18)) == 6] MSG Latvijas Republikas proklamēšanas diena (brīvdiena) OMIT 24 December MSG Ziemassvētku vakars OMIT 25 December MSG Ziemassvētki OMIT 26 December MSG Otrie Ziemassvētki diff --git a/include/holidays/mc.rem b/include/holidays/mc.rem index 55dfb8e1..249b56db 100644 --- a/include/holidays/mc.rem +++ b/include/holidays/mc.rem @@ -4,21 +4,21 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG Le jour de l'An -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Le jour de l'An (observé) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG Le jour de l'An (observé) OMIT 27 January MSG La Sainte Dévote OMIT [easterdate($Uy)+1] MSG Le lundi de Pâques OMIT 1 May MSG Fête de la Travaille -REM 2 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Fête de la Travaille (observé) +REM 2 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Fête de la Travaille (observé) OMIT [easterdate($Uy)+39] MSG L'Ascension OMIT [easterdate($Uy)+50] MSG Le lundi de Pentecôte OMIT [easterdate($Uy)+60] MSG La Fête Dieu OMIT 15 August MSG L'Assomption de Marie -REM 16 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG L'Assomption de Marie (observé) +REM 16 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 15)) == 0] MSG L'Assomption de Marie (observé) OMIT 1 November MSG La Toussaint -REM 2 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG La Toussaint (observé) +REM 2 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 1)) == 0] MSG La Toussaint (observé) OMIT 19 November MSG La Fête du Prince -REM 20 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG La Fête du Prince (observé) +REM 20 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 19)) == 0] MSG La Fête du Prince (observé) OMIT 8 December MSG L'Immaculée Conception -REM 9 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG L'Immaculée Conception +REM 9 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 8)) == 0] MSG L'Immaculée Conception OMIT 25 December MSG Noël -REM 26 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Noël (observé) +REM 26 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Noël (observé) diff --git a/include/holidays/me.rem b/include/holidays/me.rem index d4245782..0934c46a 100644 --- a/include/holidays/me.rem +++ b/include/holidays/me.rem @@ -5,22 +5,22 @@ OMIT 1 January MSG New Year's Day OMIT 2 January MSG New Year's Day -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG New Year's Day (observed) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 2)) == 0] MSG New Year's Day (observed) OMIT [easterdate($Uy)-2] MSG Orthodox Good Friday OMIT [easterdate($Uy)] MSG Orthodox Easter Sunday OMIT [easterdate($Uy)+1] MSG Orthodox Easter Monday OMIT 1 May MSG Labour Day OMIT 2 May MSG Labour Day -REM 3 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Labour Day (observed) -REM 3 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Labour Day (observed) +REM 3 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Labour Day (observed) +REM 3 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 2)) == 0] MSG Labour Day (observed) OMIT 21 May MSG Independence Day OMIT 22 May MSG Independence Day -REM 23 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence Day (observed) -REM 23 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Independence Day (observed) +REM 23 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 21)) == 0] MSG Independence Day (observed) +REM 23 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 22)) == 0] MSG Independence Day (observed) OMIT 13 July MSG Statehood Day OMIT 14 July MSG Statehood Day -REM 15 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Statehood Day (observed) -REM 15 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Statehood Day (observed) +REM 15 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 13)) == 0] MSG Statehood Day (observed) +REM 15 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 14)) == 0] MSG Statehood Day (observed) OMIT 24 December MSG Orthodox Christmas Eve OMIT 25 December MSG Orthodox Christmas diff --git a/include/holidays/mh.rem b/include/holidays/mh.rem index f0bf3b49..689e5e2f 100644 --- a/include/holidays/mh.rem +++ b/include/holidays/mh.rem @@ -4,17 +4,17 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day Holiday +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day Holiday OMIT 1 March MSG Nuclear Victims Remembrance Day -REM 2 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Nuclear Victims Remembrance Day Holiday +REM 2 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 1)) == 0] MSG Nuclear Victims Remembrance Day Holiday OMIT [easterdate($Uy)-2] MSG Good Friday OMIT 1 May MSG Constitution Day -REM 2 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Constitution Day Holiday +REM 2 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Constitution Day Holiday REM First Friday in July SCANFROM -28 ADDOMIT MSG Fisherman's Day REM First Friday in September SCANFROM -28 ADDOMIT MSG Dri-jerbal Day REM Last Friday in September SCANFROM -28 ADDOMIT MSG Manit Day OMIT 17 November MSG President's Day -REM 18 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG President's Day Holiday +REM 18 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 17)) == 0] MSG President's Day Holiday REM First Friday in December SCANFROM -28 ADDOMIT MSG Gospel Day OMIT 25 December MSG Christmas Day -REM 26 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day Holiday +REM 26 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day Holiday diff --git a/include/holidays/mp.rem b/include/holidays/mp.rem index 2f7e9f87..29ada23a 100644 --- a/include/holidays/mp.rem +++ b/include/holidays/mp.rem @@ -4,37 +4,37 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) REM Third Monday in January SCANFROM -28 ADDOMIT MSG Martin Luther King Jr. Day REM Third Monday in February SCANFROM -28 ADDOMIT MSG Washington's Birthday -REM 23 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Commonwealth Covenant Day (observed) +REM 23 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 24)) == 6] MSG Commonwealth Covenant Day (observed) OMIT 24 March MSG Commonwealth Covenant Day -REM 25 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Commonwealth Covenant Day (observed) +REM 25 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 24)) == 0] MSG Commonwealth Covenant Day (observed) OMIT [easterdate($Uy)-2] MSG Good Friday REM Last Monday in May SCANFROM -28 ADDOMIT MSG Memorial Day -REM 18 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Juneteenth National Independence Day (observed) +REM 18 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 19)) == 6] MSG Juneteenth National Independence Day (observed) OMIT 19 June MSG Juneteenth National Independence Day -REM 20 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Juneteenth National Independence Day (observed) -REM 3 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Independence Day (observed) +REM 20 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 19)) == 0] MSG Juneteenth National Independence Day (observed) +REM 3 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 4)) == 6] MSG Independence Day (observed) OMIT 4 July MSG Independence Day -REM 5 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence Day (observed) +REM 5 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 4)) == 0] MSG Independence Day (observed) REM First Monday in September SCANFROM -28 ADDOMIT MSG Labor Day REM Second Monday in October SCANFROM -28 ADDOMIT MSG Commonwealth Cultural Day REM Tuesday 2 November ADDOMIT SCANFROM -28 MSG Election Day -REM 3 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Citizenship Day (observed) +REM 3 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 4)) == 6] MSG Citizenship Day (observed) OMIT 4 November MSG Citizenship Day -REM 5 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Citizenship Day (observed) -REM 10 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Veterans Day (observed) +REM 5 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 4)) == 0] MSG Citizenship Day (observed) +REM 10 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 11)) == 6] MSG Veterans Day (observed) OMIT 11 November MSG Veterans Day -REM 12 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Veterans Day (observed) +REM 12 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 11)) == 0] MSG Veterans Day (observed) REM Fourth Thursday in November SCANFROM -28 ADDOMIT MSG Thanksgiving -REM 7 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Constitution Day (observed) +REM 7 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 8)) == 6] MSG Constitution Day (observed) OMIT 8 December MSG Constitution Day -REM 9 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Constitution Day (observed) -REM 24 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Christmas Day (observed) +REM 9 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 8)) == 0] MSG Constitution Day (observed) +REM 24 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed) OMIT 25 December MSG Christmas Day -REM 26 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) -REM 31 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG New Year's Day (observed) +REM 26 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 31 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed) REM 14 February MSG Valentine's Day REM 17 March MSG Saint Patrick's Day REM 31 October MSG Halloween diff --git a/include/holidays/mw.rem b/include/holidays/mw.rem index c2f8a529..e758038f 100644 --- a/include/holidays/mw.rem +++ b/include/holidays/mw.rem @@ -4,31 +4,31 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed) OMIT 15 January MSG John Chilembwe Day -REM 16 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG John Chilembwe Day (observed) -REM 17 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG John Chilembwe Day (observed) +REM 16 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 15)) == 0] MSG John Chilembwe Day (observed) +REM 17 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 15)) == 6] MSG John Chilembwe Day (observed) OMIT 3 March MSG Martyrs Day -REM 4 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Martyrs Day (observed) -REM 5 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Martyrs Day (observed) +REM 4 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 3)) == 0] MSG Martyrs Day (observed) +REM 5 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 3)) == 6] MSG Martyrs Day (observed) OMIT [easterdate($Uy)-2] MSG Good Friday OMIT [easterdate($Uy)+1] MSG Easter Monday OMIT 1 May MSG Labour Day -REM 2 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Labour Day (observed) -REM 3 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Labour Day (observed) +REM 2 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Labour Day (observed) +REM 3 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 6] MSG Labour Day (observed) OMIT 14 May MSG Kamuzu Day -REM 15 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Kamuzu Day (observed) -REM 16 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Kamuzu Day (observed) +REM 15 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 14)) == 0] MSG Kamuzu Day (observed) +REM 16 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 14)) == 6] MSG Kamuzu Day (observed) OMIT 6 July MSG Independence Day -REM 7 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence Day (observed) -REM 8 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence Day (observed) +REM 7 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 6)) == 0] MSG Independence Day (observed) +REM 8 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 6)) == 6] MSG Independence Day (observed) OMIT 15 October MSG Mother's Day -REM 16 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Mother's Day (observed) -REM 17 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Mother's Day (observed) +REM 16 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 15)) == 0] MSG Mother's Day (observed) +REM 17 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 15)) == 6] MSG Mother's Day (observed) OMIT 25 December MSG Christmas Day OMIT 26 December MSG Boxing Day -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Christmas Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Boxing Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Boxing Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 6] MSG Boxing Day (observed) diff --git a/include/holidays/mz.rem b/include/holidays/mz.rem index db3c8da0..6d74060e 100644 --- a/include/holidays/mz.rem +++ b/include/holidays/mz.rem @@ -4,20 +4,20 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG Dia da Fraternidade universal -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Dia da Fraternidade universal (ponte) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG Dia da Fraternidade universal (ponte) OMIT 3 February MSG Dia dos Heróis Moçambicanos -REM 4 February SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Dia dos Heróis Moçambicanos (ponte) +REM 4 February SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 2, 3)) == 0] MSG Dia dos Heróis Moçambicanos (ponte) OMIT 7 April MSG Dia da Mulher Moçambicana -REM 8 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Dia da Mulher Moçambicana (ponte) +REM 8 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 7)) == 0] MSG Dia da Mulher Moçambicana (ponte) OMIT 1 May MSG Dia Internacional dos Trabalhadores -REM 2 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Dia Internacional dos Trabalhadores (ponte) +REM 2 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Dia Internacional dos Trabalhadores (ponte) OMIT 25 June MSG Dia da Independência Nacional -REM 26 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Dia da Independência Nacional (ponte) +REM 26 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 25)) == 0] MSG Dia da Independência Nacional (ponte) OMIT 7 September MSG Dia da Vitória -REM 8 September SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Dia da Vitória (ponte) +REM 8 September SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 9, 7)) == 0] MSG Dia da Vitória (ponte) OMIT 25 September MSG Dia das Forças Armadas de Libertação Nacional -REM 26 September SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Dia das Forças Armadas de Libertação Nacional (ponte) +REM 26 September SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 9, 25)) == 0] MSG Dia das Forças Armadas de Libertação Nacional (ponte) OMIT 4 October MSG Dia da Paz e Reconciliação -REM 5 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Dia da Paz e Reconciliação (ponte) +REM 5 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 4)) == 0] MSG Dia da Paz e Reconciliação (ponte) OMIT 25 December MSG Dia da Família -REM 26 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Dia da Família (ponte) +REM 26 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Dia da Família (ponte) diff --git a/include/holidays/na.rem b/include/holidays/na.rem index 0b6f871c..ba319970 100644 --- a/include/holidays/na.rem +++ b/include/holidays/na.rem @@ -4,22 +4,22 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) OMIT 21 March MSG Independence Day -REM 22 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence Day (observed) +REM 22 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 21)) == 0] MSG Independence Day (observed) OMIT [easterdate($Uy)-2] MSG Good Friday OMIT [easterdate($Uy)+1] MSG Easter Monday OMIT 1 May MSG Workers' Day -REM 2 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Workers' Day (observed) +REM 2 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Workers' Day (observed) OMIT 4 May MSG Cassinga Day -REM 5 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Cassinga Day (observed) +REM 5 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 4)) == 0] MSG Cassinga Day (observed) OMIT [easterdate($Uy)+39] MSG Ascension Day OMIT 25 May MSG Africa Day -REM 26 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Africa Day (observed) +REM 26 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 25)) == 0] MSG Africa Day (observed) OMIT 26 August MSG Heroes' Day -REM 27 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Heroes' Day (observed) +REM 27 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 26)) == 0] MSG Heroes' Day (observed) OMIT 10 September MSG Day of the Namibian Women and International Human Rights Day -REM 11 September SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Day of the Namibian Women and International Human Rights Day (observed) +REM 11 September SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 9, 10)) == 0] MSG Day of the Namibian Women and International Human Rights Day (observed) OMIT 25 December MSG Christmas Day OMIT 26 December MSG Family Day -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Family Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Family Day (observed) diff --git a/include/holidays/nz.rem b/include/holidays/nz.rem index 89d966ef..ef9b01ac 100644 --- a/include/holidays/nz.rem +++ b/include/holidays/nz.rem @@ -12,23 +12,23 @@ OMIT 1 January MSG New Year's Day OMIT 2 January MSG Day after New Year's Day -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG New Year's Day (observed) -REM 4 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Day after New Year's Day (observed) -REM 4 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Day after New Year's Day (observed) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed) +REM 4 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 2)) == 0] MSG Day after New Year's Day (observed) +REM 4 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 2)) == 6] MSG Day after New Year's Day (observed) OMIT 6 February MSG Waitangi Day -REM 7 February SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Waitangi Day (observed) -REM 8 February SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Waitangi Day (observed) +REM 7 February SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 2, 6)) == 0] MSG Waitangi Day (observed) +REM 8 February SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 2, 6)) == 6] MSG Waitangi Day (observed) OMIT [easterdate($Uy)-2] MSG Good Friday OMIT [easterdate($Uy)+1] MSG Easter Monday OMIT 25 April MSG Anzac Day -REM 26 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Anzac Day (observed) -REM 27 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Anzac Day (observed) +REM 26 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 25)) == 0] MSG Anzac Day (observed) +REM 27 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 25)) == 6] MSG Anzac Day (observed) REM First Monday in June SCANFROM -28 ADDOMIT MSG King's Birthday REM Fourth Monday in October SCANFROM -28 ADDOMIT MSG Labour Day OMIT 25 December MSG Christmas Day OMIT 26 December MSG Boxing Day -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Christmas Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Boxing Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Boxing Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 6] MSG Boxing Day (observed) diff --git a/include/holidays/pa.rem b/include/holidays/pa.rem index f0cb5541..8e3d189b 100644 --- a/include/holidays/pa.rem +++ b/include/holidays/pa.rem @@ -4,22 +4,22 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) OMIT 9 January MSG Martyrs' Day -REM 10 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Martyrs' Day (observed) +REM 10 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 9)) == 0] MSG Martyrs' Day (observed) OMIT [easterdate($Uy)-47] MSG Carnival OMIT [easterdate($Uy)-2] MSG Good Friday OMIT 1 May MSG Labour Day -REM 2 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Labour Day (observed) +REM 2 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Labour Day (observed) OMIT 3 November MSG Separation Day OMIT 4 November MSG National Symbols Day OMIT 5 November MSG Colon Day OMIT 10 November MSG Los Santos Uprising Day OMIT 28 November MSG Independence Day -REM 29 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence Day (observed) +REM 29 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 28)) == 0] MSG Independence Day (observed) OMIT 8 December MSG Mother's Day -REM 9 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Mother's Day (observed) +REM 9 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 8)) == 0] MSG Mother's Day (observed) OMIT 20 December MSG National Mourning Day -REM 21 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG National Mourning Day (observed) +REM 21 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 20)) == 0] MSG National Mourning Day (observed) OMIT 25 December MSG Christmas Day -REM 26 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) +REM 26 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) diff --git a/include/holidays/pg.rem b/include/holidays/pg.rem index 9be3e52c..18b30a54 100644 --- a/include/holidays/pg.rem +++ b/include/holidays/pg.rem @@ -4,19 +4,19 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) OMIT 26 February MSG Grand Chief Sir Michael Somare Remembrance Day OMIT [easterdate($Uy)-2] MSG Good Friday OMIT [easterdate($Uy)] MSG Easter Sunday OMIT [easterdate($Uy)+1] MSG Easter Monday OMIT 17 June MSG King's Birthday OMIT 23 July MSG Papua New Guinea Remembrance Day -REM 24 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Papua New Guinea Remembrance Day (observed) +REM 24 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 23)) == 0] MSG Papua New Guinea Remembrance Day (observed) OMIT 26 August MSG National Repentance Day -REM 27 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG National Repentance Day (observed) +REM 27 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 26)) == 0] MSG National Repentance Day (observed) OMIT 16 September MSG Independence Day -REM 17 September SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence Day (observed) +REM 17 September SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 9, 16)) == 0] MSG Independence Day (observed) OMIT 25 December MSG Christmas Day OMIT 26 December MSG Boxing Day -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Boxing Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed) diff --git a/include/holidays/pr.rem b/include/holidays/pr.rem index 6220f1bb..d7d314e8 100644 --- a/include/holidays/pr.rem +++ b/include/holidays/pr.rem @@ -4,33 +4,33 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) OMIT 6 January MSG Epiphany REM Third Monday in January SCANFROM -28 ADDOMIT MSG Martin Luther King Jr. Day REM Third Monday in February SCANFROM -28 ADDOMIT MSG Presidents' Day OMIT 22 March MSG Emancipation Day -REM 23 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Emancipation Day (observed) +REM 23 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 22)) == 0] MSG Emancipation Day (observed) OMIT [easterdate($Uy)-2] MSG Good Friday REM Last Monday in May SCANFROM -28 ADDOMIT MSG Memorial Day -REM 18 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Juneteenth National Independence Day (observed) +REM 18 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 19)) == 6] MSG Juneteenth National Independence Day (observed) OMIT 19 June MSG Juneteenth National Independence Day -REM 20 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Juneteenth National Independence Day (observed) -REM 3 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Independence Day (observed) +REM 20 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 19)) == 0] MSG Juneteenth National Independence Day (observed) +REM 3 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 4)) == 6] MSG Independence Day (observed) OMIT 4 July MSG Independence Day -REM 5 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence Day (observed) +REM 5 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 4)) == 0] MSG Independence Day (observed) OMIT 25 July MSG Constitution Day -REM 26 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Constitution Day (observed) +REM 26 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 25)) == 0] MSG Constitution Day (observed) REM First Monday in September SCANFROM -28 ADDOMIT MSG Labor Day -REM 10 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Veterans Day (observed) +REM 10 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 11)) == 6] MSG Veterans Day (observed) OMIT 11 November MSG Veterans Day -REM 12 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Veterans Day (observed) +REM 12 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 11)) == 0] MSG Veterans Day (observed) OMIT 19 November MSG Discovery Day -REM 20 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Discovery Day (observed) +REM 20 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 19)) == 0] MSG Discovery Day (observed) REM Fourth Thursday in November SCANFROM -28 ADDOMIT MSG Thanksgiving -REM 24 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Christmas Day (observed) +REM 24 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed) OMIT 25 December MSG Christmas Day -REM 26 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) -REM 31 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG New Year's Day (observed) +REM 26 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 31 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed) REM 14 February MSG Valentine's Day REM 17 March MSG Saint Patrick's Day REM 31 October MSG Halloween diff --git a/include/holidays/pw.rem b/include/holidays/pw.rem index 47a13afa..0e40ba14 100644 --- a/include/holidays/pw.rem +++ b/include/holidays/pw.rem @@ -4,29 +4,29 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) -REM 14 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Youth Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) +REM 14 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 15)) == 6] MSG Youth Day (observed) OMIT 15 March MSG Youth Day -REM 16 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Youth Day (observed) -REM 4 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Senior Citizens Day (observed) +REM 16 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 15)) == 0] MSG Youth Day (observed) +REM 4 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 5)) == 6] MSG Senior Citizens Day (observed) OMIT 5 May MSG Senior Citizens Day -REM 6 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Senior Citizens Day (observed) -REM 31 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG President's Day (observed) +REM 6 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 5)) == 0] MSG Senior Citizens Day (observed) +REM 31 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 1)) == 6] MSG President's Day (observed) OMIT 1 June MSG President's Day -REM 2 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG President's Day (observed) -REM 8 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Constitution Day (observed) +REM 2 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 1)) == 0] MSG President's Day (observed) +REM 8 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 9)) == 6] MSG Constitution Day (observed) OMIT 9 July MSG Constitution Day -REM 10 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Constitution Day (observed) +REM 10 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 9)) == 0] MSG Constitution Day (observed) REM First Monday in September SCANFROM -28 ADDOMIT MSG Labor Day -REM 30 September SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Independence Day (observed) +REM 30 September SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 1)) == 6] MSG Independence Day (observed) OMIT 1 October MSG Independence Day -REM 2 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence Day (observed) -REM 23 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG United Nations Day (observed) +REM 2 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 1)) == 0] MSG Independence Day (observed) +REM 23 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 24)) == 6] MSG United Nations Day (observed) OMIT 24 October MSG United Nations Day -REM 25 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG United Nations Day (observed) +REM 25 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 24)) == 0] MSG United Nations Day (observed) REM Fourth Friday in November SCANFROM -28 ADDOMIT MSG Family Day REM Fourth Thursday in November SCANFROM -28 ADDOMIT MSG Thanksgiving Day -REM 24 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Christmas Day (observed) +REM 24 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed) OMIT 25 December MSG Christmas Day -REM 26 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) -REM 31 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG New Year's Day (observed) +REM 26 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 31 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed) diff --git a/include/holidays/rs.rem b/include/holidays/rs.rem index afe5f627..5262453c 100644 --- a/include/holidays/rs.rem +++ b/include/holidays/rs.rem @@ -5,20 +5,20 @@ OMIT 1 January MSG Нова година OMIT 2 January MSG Нова година -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Нова година (слободан дан) -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Нова година (слободан дан) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG Нова година (слободан дан) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 2)) == 0] MSG Нова година (слободан дан) OMIT 15 February MSG Дан државности Србије OMIT 16 February MSG Дан државности Србије -REM 17 February SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Дан државности Србије (слободан дан) -REM 17 February SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Дан државности Србије (слободан дан) +REM 17 February SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 2, 15)) == 0] MSG Дан државности Србије (слободан дан) +REM 17 February SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 2, 16)) == 0] MSG Дан државности Србије (слободан дан) OMIT [easterdate($Uy)-2] MSG Велики петак OMIT [easterdate($Uy)-1] MSG Велика субота OMIT [easterdate($Uy)] MSG Васкрс OMIT [easterdate($Uy)+1] MSG Други дан Васкрса OMIT 1 May MSG Празник рада OMIT 2 May MSG Празник рада -REM 3 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Празник рада (слободан дан) -REM 3 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Празник рада (слободан дан) +REM 3 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Празник рада (слободан дан) +REM 3 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 2)) == 0] MSG Празник рада (слободан дан) OMIT 11 November MSG Дан примирја у Првом светском рату -REM 12 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Дан примирја у Првом светском рату (слободан дан) +REM 12 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 11)) == 0] MSG Дан примирја у Првом светском рату (слободан дан) OMIT 25 December MSG Божић diff --git a/include/holidays/sa.rem b/include/holidays/sa.rem index e02a5274..a9170b37 100644 --- a/include/holidays/sa.rem +++ b/include/holidays/sa.rem @@ -3,7 +3,7 @@ # Derived from the Python holidays project at # https://github.com/vacanza/holidays -REM 21 February SCANFROM -28 ADDOMIT SATISFY [$Tw == 4] MSG (ملاحظة) يوم التأسيسي -REM 23 February SCANFROM -28 ADDOMIT SATISFY [$Tw == 0] MSG (ملاحظة) يوم التأسيسي -REM 22 September SCANFROM -28 ADDOMIT SATISFY [$Tw == 4] MSG (ملاحظة) اليوم الوطني -REM 24 September SCANFROM -28 ADDOMIT SATISFY [$Tw == 0] MSG (ملاحظة) اليوم الوطني +REM 21 February SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 2, 22)) == 5] MSG (ملاحظة) يوم التأسيسي +REM 23 February SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 2, 22)) == 6] MSG (ملاحظة) يوم التأسيسي +REM 22 September SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 9, 23)) == 5] MSG (ملاحظة) اليوم الوطني +REM 24 September SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 9, 23)) == 6] MSG (ملاحظة) اليوم الوطني diff --git a/include/holidays/sc.rem b/include/holidays/sc.rem index 59432ad9..0f99a41d 100644 --- a/include/holidays/sc.rem +++ b/include/holidays/sc.rem @@ -5,22 +5,22 @@ OMIT 1 January MSG New Year's Day OMIT 2 January MSG New Year Holiday -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year Holiday (observed) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 2)) == 0] MSG New Year Holiday (observed) OMIT [easterdate($Uy)-2] MSG Good Friday OMIT [easterdate($Uy)-1] MSG Easter Saturday OMIT [easterdate($Uy)+1] MSG Easter Monday OMIT 1 May MSG Labour Day -REM 2 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Labour Day (observed) +REM 2 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Labour Day (observed) OMIT [easterdate($Uy)+60] MSG The Fete Dieu OMIT 18 June MSG Constitution Day -REM 19 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Constitution Day (observed) +REM 19 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 18)) == 0] MSG Constitution Day (observed) OMIT 29 June MSG Independence (National) Day -REM 30 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence (National) Day (observed) +REM 30 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 29)) == 0] MSG Independence (National) Day (observed) OMIT 15 August MSG Assumption Day -REM 16 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Assumption Day (observed) +REM 16 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 15)) == 0] MSG Assumption Day (observed) OMIT 1 November MSG All Saints Day -REM 2 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG All Saints Day (observed) +REM 2 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 1)) == 0] MSG All Saints Day (observed) OMIT 8 December MSG The Feast of the Immaculate Conception -REM 9 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG The Feast of the Immaculate Conception (observed) +REM 9 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 8)) == 0] MSG The Feast of the Immaculate Conception (observed) OMIT 25 December MSG Christmas Day -REM 26 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) +REM 26 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) diff --git a/include/holidays/sz.rem b/include/holidays/sz.rem index 88dea872..2cdd21a8 100644 --- a/include/holidays/sz.rem +++ b/include/holidays/sz.rem @@ -4,21 +4,21 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) OMIT [easterdate($Uy)-2] MSG Good Friday OMIT [easterdate($Uy)+1] MSG Easter Monday OMIT 19 April MSG King's Birthday -REM 20 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG King's Birthday (observed) +REM 20 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 19)) == 0] MSG King's Birthday (observed) OMIT 25 April MSG National Flag Day -REM 26 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG National Flag Day (observed) +REM 26 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 25)) == 0] MSG National Flag Day (observed) OMIT 1 May MSG Worker's Day -REM 2 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Worker's Day (observed) +REM 2 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Worker's Day (observed) OMIT [easterdate($Uy)+39] MSG Ascension Day OMIT 22 July MSG Birthday of Late King Sobhuza -REM 23 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Birthday of Late King Sobhuza (observed) +REM 23 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 22)) == 0] MSG Birthday of Late King Sobhuza (observed) OMIT 6 September MSG Independence Day -REM 7 September SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence Day (observed) +REM 7 September SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 9, 6)) == 0] MSG Independence Day (observed) OMIT 25 December MSG Christmas Day OMIT 26 December MSG Boxing Day -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Boxing Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed) diff --git a/include/holidays/td.rem b/include/holidays/td.rem index b7c773eb..135a5031 100644 --- a/include/holidays/td.rem +++ b/include/holidays/td.rem @@ -4,17 +4,17 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) OMIT 8 March MSG International Women's Day -REM 9 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG International Women's Day (observed) +REM 9 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 8)) == 0] MSG International Women's Day (observed) OMIT [easterdate($Uy)+1] MSG Easter Monday OMIT 1 May MSG Labour Day -REM 2 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Labour Day (observed) +REM 2 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Labour Day (observed) OMIT 11 August MSG Independence Day -REM 12 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence Day (observed) +REM 12 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 11)) == 0] MSG Independence Day (observed) OMIT 1 November MSG All Saints' Day OMIT 28 November MSG Republic Day -REM 29 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Republic Day (observed) +REM 29 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 28)) == 0] MSG Republic Day (observed) OMIT 1 December MSG Freedom and Democracy Day -REM 2 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Freedom and Democracy Day (observed) +REM 2 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 1)) == 0] MSG Freedom and Democracy Day (observed) OMIT 25 December MSG Christmas Day diff --git a/include/holidays/th.rem b/include/holidays/th.rem index 13b0193e..ca0128e2 100644 --- a/include/holidays/th.rem +++ b/include/holidays/th.rem @@ -4,57 +4,57 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG วันขึ้นปีใหม่ -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันขึ้นปีใหม่ -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันขึ้นปีใหม่ +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG ชดเชยวันขึ้นปีใหม่ +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG ชดเชยวันขึ้นปีใหม่ REM Second Saturday in January SCANFROM -28 ADDOMIT MSG วันเด็กแห่งชาติ -REM 25 February SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันมาฆบูชา -REM 26 February SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันมาฆบูชา +REM 25 February SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 2, 24)) == 0] MSG ชดเชยวันมาฆบูชา +REM 26 February SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 2, 24)) == 6] MSG ชดเชยวันมาฆบูชา OMIT 6 April MSG วันจักรี -REM 7 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันจักรี -REM 8 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันจักรี +REM 7 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 6)) == 0] MSG ชดเชยวันจักรี +REM 8 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 6)) == 6] MSG ชดเชยวันจักรี OMIT 13 April MSG วันสงกรานต์ REM 13 April OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 MAYBE-UNCOMPUTABLE SATISFY [wkdaynum(date($Ty, 4, 13))==0 || wkdaynum(date($Ty, 4, 13))==6] MSG ชดเชยวันสงกรานต์ OMIT 14 April MSG วันสงกรานต์ OMIT 15 April MSG วันสงกรานต์ OMIT 1 May MSG วันแรงงานแห่งชาติ -REM 2 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันแรงงานแห่งชาติ -REM 3 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันแรงงานแห่งชาติ +REM 2 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG ชดเชยวันแรงงานแห่งชาติ +REM 3 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 6] MSG ชดเชยวันแรงงานแห่งชาติ OMIT 4 May MSG วันฉัตรมงคล -REM 5 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันฉัตรมงคล -REM 6 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันฉัตรมงคล -REM 11 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันพืชมงคล -REM 12 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันพืชมงคล -REM 23 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันวิสาขบูชา -REM 24 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันวิสาขบูชา +REM 5 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 4)) == 0] MSG ชดเชยวันฉัตรมงคล +REM 6 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 4)) == 6] MSG ชดเชยวันฉัตรมงคล +REM 11 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 10)) == 0] MSG ชดเชยวันพืชมงคล +REM 12 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 10)) == 6] MSG ชดเชยวันพืชมงคล +REM 23 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 22)) == 0] MSG ชดเชยวันวิสาขบูชา +REM 24 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 22)) == 6] MSG ชดเชยวันวิสาขบูชา OMIT 3 June MSG วันเฉลิมพระชนมพรรษาสมเด็จพระนางเจ้าสุทิดา พัชรสุธาพิมลลักษณ พระบรมราชินี -REM 4 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันเฉลิมพระชนมพรรษาสมเด็จพระนางเจ้าสุทิดา พัชรสุธาพิมลลักษณ พระบรมราชินี -REM 5 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันเฉลิมพระชนมพรรษาสมเด็จพระนางเจ้าสุทิดา พัชรสุธาพิมลลักษณ พระบรมราชินี -REM 22 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันอาสาฬหบูชา -REM 22 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG ชดเชยวันอาสาฬหบูชา -REM 23 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันเข้าพรรษา +REM 4 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 3)) == 0] MSG ชดเชยวันเฉลิมพระชนมพรรษาสมเด็จพระนางเจ้าสุทิดา พัชรสุธาพิมลลักษณ พระบรมราชินี +REM 5 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 3)) == 6] MSG ชดเชยวันเฉลิมพระชนมพรรษาสมเด็จพระนางเจ้าสุทิดา พัชรสุธาพิมลลักษณ พระบรมราชินี +REM 22 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 20)) == 0] MSG ชดเชยวันอาสาฬหบูชา +REM 22 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 20)) == 6] MSG ชดเชยวันอาสาฬหบูชา +REM 23 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 21)) == 6] MSG ชดเชยวันเข้าพรรษา OMIT 28 July MSG วันเฉลิมพระชนมพรรษาพระบาทสมเด็จพระปรเมนทรรามาธิบดีศรีสินทรมหาวชิราลงกรณ พระวชิรเกล้าเจ้าอยู่หัว -REM 29 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันเฉลิมพระชนมพรรษาพระบาทสมเด็จพระปรเมนทรรามาธิบดีศรีสินทรมหาวชิราลงกรณ พระวชิรเกล้าเจ้าอยู่หัว -REM 30 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันเฉลิมพระชนมพรรษาพระบาทสมเด็จพระปรเมนทรรามาธิบดีศรีสินทรมหาวชิราลงกรณ พระวชิรเกล้าเจ้าอยู่หัว +REM 29 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 28)) == 0] MSG ชดเชยวันเฉลิมพระชนมพรรษาพระบาทสมเด็จพระปรเมนทรรามาธิบดีศรีสินทรมหาวชิราลงกรณ พระวชิรเกล้าเจ้าอยู่หัว +REM 30 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 28)) == 6] MSG ชดเชยวันเฉลิมพระชนมพรรษาพระบาทสมเด็จพระปรเมนทรรามาธิบดีศรีสินทรมหาวชิราลงกรณ พระวชิรเกล้าเจ้าอยู่หัว OMIT 12 August MSG วันเฉลิมพระชนมพรรษาสมเด็จพระบรมราชชนนีพันปีหลวง OMIT 12 August MSG วันแม่แห่งชาติ -REM 13 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันเฉลิมพระชนมพรรษาสมเด็จพระบรมราชชนนีพันปีหลวง -REM 14 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันเฉลิมพระชนมพรรษาสมเด็จพระบรมราชชนนีพันปีหลวง +REM 13 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 12)) == 0] MSG ชดเชยวันเฉลิมพระชนมพรรษาสมเด็จพระบรมราชชนนีพันปีหลวง +REM 14 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 12)) == 6] MSG ชดเชยวันเฉลิมพระชนมพรรษาสมเด็จพระบรมราชชนนีพันปีหลวง OMIT 13 October MSG วันนวมินทรมหาราช -REM 14 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันนวมินทรมหาราช -REM 15 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันนวมินทรมหาราช +REM 14 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 13)) == 0] MSG ชดเชยวันนวมินทรมหาราช +REM 15 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 13)) == 6] MSG ชดเชยวันนวมินทรมหาราช OMIT 23 October MSG วันปิยมหาราช -REM 24 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันปิยมหาราช -REM 25 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันปิยมหาราช +REM 24 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 23)) == 0] MSG ชดเชยวันปิยมหาราช +REM 25 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 23)) == 6] MSG ชดเชยวันปิยมหาราช OMIT 5 December MSG วันคล้ายวันเฉลิมพระชนมพรรษาพระบาทสมเด็จพระบรมชนกาธิเบศร มหาภูมิพลอดุลยเดชมหาราช บรมนาถบพิตร OMIT 5 December MSG วันชาติ OMIT 5 December MSG วันพ่อแห่งชาติ -REM 6 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันคล้ายวันเฉลิมพระชนมพรรษาพระบาทสมเด็จพระบรมชนกาธิเบศร มหาภูมิพลอดุลยเดชมหาราช บรมนาถบพิตร -REM 6 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันชาติ -REM 7 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันคล้ายวันเฉลิมพระชนมพรรษาพระบาทสมเด็จพระบรมชนกาธิเบศร มหาภูมิพลอดุลยเดชมหาราช บรมนาถบพิตร -REM 7 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันชาติ +REM 6 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 5)) == 0] MSG ชดเชยวันคล้ายวันเฉลิมพระชนมพรรษาพระบาทสมเด็จพระบรมชนกาธิเบศร มหาภูมิพลอดุลยเดชมหาราช บรมนาถบพิตร +REM 6 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 5)) == 0] MSG ชดเชยวันชาติ +REM 7 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 5)) == 6] MSG ชดเชยวันคล้ายวันเฉลิมพระชนมพรรษาพระบาทสมเด็จพระบรมชนกาธิเบศร มหาภูมิพลอดุลยเดชมหาราช บรมนาถบพิตร +REM 7 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 5)) == 6] MSG ชดเชยวันชาติ OMIT 10 December MSG วันรัฐธรรมนูญ -REM 11 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันรัฐธรรมนูญ -REM 12 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG ชดเชยวันรัฐธรรมนูญ +REM 11 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 10)) == 0] MSG ชดเชยวันรัฐธรรมนูญ +REM 12 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 10)) == 6] MSG ชดเชยวันรัฐธรรมนูญ OMIT 31 December MSG วันสิ้นปี REM 13 January MSG วันการบินแห่งชาติ REM 14 January MSG วันอนุรักษ์ทรัพยากรป่าไม้ของชาติ diff --git a/include/holidays/to.rem b/include/holidays/to.rem index b3f006a8..1e515536 100644 --- a/include/holidays/to.rem +++ b/include/holidays/to.rem @@ -7,30 +7,30 @@ OMIT 1 January MSG 'Uluaki 'Aho 'o e Ta'u Fo'ou OMIT [easterdate($Uy)-2] MSG Falaite Lelei OMIT [easterdate($Uy)+1] MSG Monite 'o e Toetu'u OMIT 25 April MSG 'Aho Anzac -REM 2 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG 'Aho Tau'ataina (fakatokanga'i) -REM 3 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG 'Aho Tau'ataina (fakatokanga'i) +REM 2 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 4)) == 3] MSG 'Aho Tau'ataina (fakatokanga'i) +REM 3 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 4)) == 2] MSG 'Aho Tau'ataina (fakatokanga'i) OMIT 4 June MSG 'Aho Tau'ataina -REM 5 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG 'Aho Tau'ataina (fakatokanga'i) -REM 6 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG 'Aho Tau'ataina (fakatokanga'i) -REM 7 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG 'Aho Tau'ataina (fakatokanga'i) -REM 8 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG 'Aho Tau'ataina (fakatokanga'i) +REM 5 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 4)) == 0] MSG 'Aho Tau'ataina (fakatokanga'i) +REM 6 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 4)) == 6] MSG 'Aho Tau'ataina (fakatokanga'i) +REM 7 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 4)) == 5] MSG 'Aho Tau'ataina (fakatokanga'i) +REM 8 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 4)) == 4] MSG 'Aho Tau'ataina (fakatokanga'i) OMIT 4 July MSG 'Aho 'Alo'i 'o 'Ene 'Afio ko e Tu'i 'o Tonga 'oku lolotonga Pule -REM 5 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG 'Aho 'Alo'i 'o 'Ene 'Afio ko e Tu'i 'o Tonga 'oku lolotonga Pule (fakatokanga'i) +REM 5 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 4)) == 0] MSG 'Aho 'Alo'i 'o 'Ene 'Afio ko e Tu'i 'o Tonga 'oku lolotonga Pule (fakatokanga'i) OMIT 17 September MSG 'Aho 'Alo'i 'o e 'Ea ki he Kalauni 'o Tonga -REM 18 September SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG 'Aho 'Alo'i 'o e 'Ea ki he Kalauni 'o Tonga (fakatokanga'i) -REM 2 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG 'Aho Konisitutone (fakatokanga'i) -REM 3 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG 'Aho Konisitutone (fakatokanga'i) +REM 18 September SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 9, 17)) == 0] MSG 'Aho 'Alo'i 'o e 'Ea ki he Kalauni 'o Tonga (fakatokanga'i) +REM 2 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 4)) == 3] MSG 'Aho Konisitutone (fakatokanga'i) +REM 3 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 4)) == 2] MSG 'Aho Konisitutone (fakatokanga'i) OMIT 4 November MSG 'Aho Konisitutone -REM 5 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG 'Aho Konisitutone (fakatokanga'i) -REM 6 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG 'Aho Konisitutone (fakatokanga'i) -REM 7 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG 'Aho Konisitutone (fakatokanga'i) -REM 8 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG 'Aho Konisitutone (fakatokanga'i) -REM 2 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG 'Aho Fakamanatu 'o e Hilifaki Kalauni 'o 'Ene 'Afio ko Siaosi Tupou I (fakatokanga'i) -REM 3 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG 'Aho Fakamanatu 'o e Hilifaki Kalauni 'o 'Ene 'Afio ko Siaosi Tupou I (fakatokanga'i) +REM 5 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 4)) == 0] MSG 'Aho Konisitutone (fakatokanga'i) +REM 6 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 4)) == 6] MSG 'Aho Konisitutone (fakatokanga'i) +REM 7 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 4)) == 5] MSG 'Aho Konisitutone (fakatokanga'i) +REM 8 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 4)) == 4] MSG 'Aho Konisitutone (fakatokanga'i) +REM 2 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 4)) == 3] MSG 'Aho Fakamanatu 'o e Hilifaki Kalauni 'o 'Ene 'Afio ko Siaosi Tupou I (fakatokanga'i) +REM 3 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 4)) == 2] MSG 'Aho Fakamanatu 'o e Hilifaki Kalauni 'o 'Ene 'Afio ko Siaosi Tupou I (fakatokanga'i) OMIT 4 December MSG 'Aho Fakamanatu 'o e Hilifaki Kalauni 'o 'Ene 'Afio ko Siaosi Tupou I -REM 5 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG 'Aho Fakamanatu 'o e Hilifaki Kalauni 'o 'Ene 'Afio ko Siaosi Tupou I (fakatokanga'i) -REM 6 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG 'Aho Fakamanatu 'o e Hilifaki Kalauni 'o 'Ene 'Afio ko Siaosi Tupou I (fakatokanga'i) -REM 7 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG 'Aho Fakamanatu 'o e Hilifaki Kalauni 'o 'Ene 'Afio ko Siaosi Tupou I (fakatokanga'i) -REM 8 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG 'Aho Fakamanatu 'o e Hilifaki Kalauni 'o 'Ene 'Afio ko Siaosi Tupou I (fakatokanga'i) +REM 5 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 4)) == 0] MSG 'Aho Fakamanatu 'o e Hilifaki Kalauni 'o 'Ene 'Afio ko Siaosi Tupou I (fakatokanga'i) +REM 6 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 4)) == 6] MSG 'Aho Fakamanatu 'o e Hilifaki Kalauni 'o 'Ene 'Afio ko Siaosi Tupou I (fakatokanga'i) +REM 7 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 4)) == 5] MSG 'Aho Fakamanatu 'o e Hilifaki Kalauni 'o 'Ene 'Afio ko Siaosi Tupou I (fakatokanga'i) +REM 8 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 4)) == 4] MSG 'Aho Fakamanatu 'o e Hilifaki Kalauni 'o 'Ene 'Afio ko Siaosi Tupou I (fakatokanga'i) OMIT 25 December MSG 'Aho Kilisimasi OMIT 26 December MSG 'Aho 2 'o e Kilisimasi diff --git a/include/holidays/tw.rem b/include/holidays/tw.rem index 5b8d5838..e931ab2e 100644 --- a/include/holidays/tw.rem +++ b/include/holidays/tw.rem @@ -9,16 +9,16 @@ REM 1 January OMIT SAT SUN BEFORE ADDOMIT SCANFROM -28 MAYBE-UNCOMPUTABLE SATISF OMIT 28 February MSG 和平紀念日 REM 28 February OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 MAYBE-UNCOMPUTABLE SATISFY [wkdaynum(date($Ty, 2, 28))==0 || wkdaynum(date($Ty, 2, 28))==6] MSG 和平紀念日(慶祝) REM 28 February OMIT SAT SUN BEFORE ADDOMIT SCANFROM -28 MAYBE-UNCOMPUTABLE SATISFY [wkdaynum(date($Ty, 2, 28))==0 || wkdaynum(date($Ty, 2, 28))==6] MSG 和平紀念日(慶祝) -REM 2 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG 兒童節(慶祝) -REM 3 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG 兒童節(慶祝) -REM 3 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG 兒童節(慶祝) -REM 3 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 4] MSG 兒童節(慶祝) -REM 3 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG 兒童節(慶祝) +REM 2 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 4)) == 0] MSG 兒童節(慶祝) +REM 3 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 4)) == 2] MSG 兒童節(慶祝) +REM 3 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 4)) == 3] MSG 兒童節(慶祝) +REM 3 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 4)) == 5] MSG 兒童節(慶祝) +REM 3 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 4)) == 6] MSG 兒童節(慶祝) OMIT 4 April MSG 兒童節 REM 4 April OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 MAYBE-UNCOMPUTABLE SATISFY [wkdaynum(date($Ty, 4, 4))==0 || wkdaynum(date($Ty, 4, 4))==6] MSG 清明節(慶祝) REM 4 April OMIT SAT SUN BEFORE ADDOMIT SCANFROM -28 MAYBE-UNCOMPUTABLE SATISFY [wkdaynum(date($Ty, 4, 4))==0 || wkdaynum(date($Ty, 4, 4))==6] MSG 清明節(慶祝) -REM 5 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG 兒童節(慶祝) -REM 5 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG 兒童節(慶祝) +REM 5 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 4)) == 1] MSG 兒童節(慶祝) +REM 5 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 4)) == 4] MSG 兒童節(慶祝) OMIT 10 October MSG 中華民國國慶日 REM 10 October OMIT SAT SUN AFTER ADDOMIT SCANFROM -28 MAYBE-UNCOMPUTABLE SATISFY [wkdaynum(date($Ty, 10, 10))==0 || wkdaynum(date($Ty, 10, 10))==6] MSG 中華民國國慶日(慶祝) REM 10 October OMIT SAT SUN BEFORE ADDOMIT SCANFROM -28 MAYBE-UNCOMPUTABLE SATISFY [wkdaynum(date($Ty, 10, 10))==0 || wkdaynum(date($Ty, 10, 10))==6] MSG 中華民國國慶日(慶祝) diff --git a/include/holidays/uk.rem b/include/holidays/uk.rem index 5a8641a5..fb4c334c 100644 --- a/include/holidays/uk.rem +++ b/include/holidays/uk.rem @@ -11,14 +11,14 @@ # [$SysInclude]/uk/ OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed) OMIT [easterdate($Uy)-2] MSG Good Friday REM First Monday in May SCANFROM -28 ADDOMIT MSG May Day REM Last Monday in May SCANFROM -28 ADDOMIT MSG Spring Bank Holiday OMIT 25 December MSG Christmas Day OMIT 26 December MSG Boxing Day -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Christmas Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Boxing Day (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Boxing Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Boxing Day (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 6] MSG Boxing Day (observed) diff --git a/include/holidays/uk/nir.rem b/include/holidays/uk/nir.rem index 869cdf71..37183467 100644 --- a/include/holidays/uk/nir.rem +++ b/include/holidays/uk/nir.rem @@ -10,10 +10,10 @@ # also include [$SysInclude]/uk.rem OMIT 17 March MSG Saint Patrick's Day -REM 18 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Saint Patrick's Day (observed) -REM 19 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Saint Patrick's Day (observed) +REM 18 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 17)) == 0] MSG Saint Patrick's Day (observed) +REM 19 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 17)) == 6] MSG Saint Patrick's Day (observed) OMIT [easterdate($Uy)+1] MSG Easter Monday OMIT 12 July MSG Battle of the Boyne -REM 13 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Battle of the Boyne (observed) -REM 14 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Battle of the Boyne (observed) +REM 13 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 12)) == 0] MSG Battle of the Boyne (observed) +REM 14 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 12)) == 6] MSG Battle of the Boyne (observed) REM Last Monday in August SCANFROM -28 ADDOMIT MSG Late Summer Bank Holiday diff --git a/include/holidays/uk/sct.rem b/include/holidays/uk/sct.rem index a1baadcb..415bafe9 100644 --- a/include/holidays/uk/sct.rem +++ b/include/holidays/uk/sct.rem @@ -10,10 +10,10 @@ # also include [$SysInclude]/uk.rem OMIT 2 January MSG New Year Holiday -REM 3 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG New Year Holiday (observed) -REM 4 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year Holiday (observed) -REM 4 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG New Year Holiday (observed) +REM 3 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 2)) == 1] MSG New Year Holiday (observed) +REM 4 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 2)) == 0] MSG New Year Holiday (observed) +REM 4 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 2)) == 6] MSG New Year Holiday (observed) REM First Monday in August SCANFROM -28 ADDOMIT MSG Summer Bank Holiday OMIT 30 November MSG Saint Andrew's Day -REM 1 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Saint Andrew's Day (observed) -REM 2 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Saint Andrew's Day (observed) +REM 1 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 30)) == 0] MSG Saint Andrew's Day (observed) +REM 2 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 30)) == 6] MSG Saint Andrew's Day (observed) diff --git a/include/holidays/um.rem b/include/holidays/um.rem index f8e0d22e..84cfe0c4 100644 --- a/include/holidays/um.rem +++ b/include/holidays/um.rem @@ -4,25 +4,25 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) REM Third Monday in January SCANFROM -28 ADDOMIT MSG Martin Luther King Jr. Day REM Third Monday in February SCANFROM -28 ADDOMIT MSG Washington's Birthday REM Last Monday in May SCANFROM -28 ADDOMIT MSG Memorial Day -REM 18 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Juneteenth National Independence Day (observed) +REM 18 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 19)) == 6] MSG Juneteenth National Independence Day (observed) OMIT 19 June MSG Juneteenth National Independence Day -REM 20 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Juneteenth National Independence Day (observed) -REM 3 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Independence Day (observed) +REM 20 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 19)) == 0] MSG Juneteenth National Independence Day (observed) +REM 3 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 4)) == 6] MSG Independence Day (observed) OMIT 4 July MSG Independence Day -REM 5 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence Day (observed) +REM 5 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 4)) == 0] MSG Independence Day (observed) REM First Monday in September SCANFROM -28 ADDOMIT MSG Labor Day -REM 10 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Veterans Day (observed) +REM 10 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 11)) == 6] MSG Veterans Day (observed) OMIT 11 November MSG Veterans Day -REM 12 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Veterans Day (observed) +REM 12 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 11)) == 0] MSG Veterans Day (observed) REM Fourth Thursday in November SCANFROM -28 ADDOMIT MSG Thanksgiving -REM 24 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Christmas Day (observed) +REM 24 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed) OMIT 25 December MSG Christmas Day -REM 26 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) -REM 31 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG New Year's Day (observed) +REM 26 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 31 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed) REM 14 February MSG Valentine's Day REM 17 March MSG Saint Patrick's Day REM 31 October MSG Halloween diff --git a/include/holidays/us.rem b/include/holidays/us.rem index b9f603c7..231ad9ef 100644 --- a/include/holidays/us.rem +++ b/include/holidays/us.rem @@ -11,26 +11,26 @@ # [$SysInclude]/us/ OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) REM Third Monday in January SCANFROM -28 ADDOMIT MSG Martin Luther King Jr. Day REM Third Monday in February SCANFROM -28 ADDOMIT MSG Washington's Birthday REM Last Monday in May SCANFROM -28 ADDOMIT MSG Memorial Day -REM 18 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Juneteenth National Independence Day (observed) +REM 18 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 19)) == 6] MSG Juneteenth National Independence Day (observed) OMIT 19 June MSG Juneteenth National Independence Day -REM 20 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Juneteenth National Independence Day (observed) -REM 3 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Independence Day (observed) +REM 20 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 19)) == 0] MSG Juneteenth National Independence Day (observed) +REM 3 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 4)) == 6] MSG Independence Day (observed) OMIT 4 July MSG Independence Day -REM 5 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence Day (observed) +REM 5 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 4)) == 0] MSG Independence Day (observed) REM First Monday in September SCANFROM -28 ADDOMIT MSG Labor Day REM Second Monday in October SCANFROM -28 ADDOMIT MSG Columbus Day -REM 10 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Veterans Day (observed) +REM 10 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 11)) == 6] MSG Veterans Day (observed) OMIT 11 November MSG Veterans Day -REM 12 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Veterans Day (observed) +REM 12 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 11)) == 0] MSG Veterans Day (observed) REM Fourth Thursday in November SCANFROM -28 ADDOMIT MSG Thanksgiving -REM 24 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Christmas Day (observed) +REM 24 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed) OMIT 25 December MSG Christmas Day -REM 26 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) -REM 31 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG New Year's Day (observed) +REM 26 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 31 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed) REM 2 February MSG Groundhog Day REM 14 February MSG Valentine's Day REM 17 March MSG Saint Patrick's Day diff --git a/include/holidays/us/ak.rem b/include/holidays/us/ak.rem index 7c5fc866..0d1e4690 100644 --- a/include/holidays/us/ak.rem +++ b/include/holidays/us/ak.rem @@ -11,6 +11,6 @@ REM Last Monday in March SCANFROM -28 ADDOMIT MSG Seward's Day REM Second Monday in October SCANFROM -28 ADDOMIT MSG Indigenous Peoples' Day -REM 17 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Alaska Day (observed) +REM 17 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 18)) == 6] MSG Alaska Day (observed) OMIT 18 October MSG Alaska Day -REM 19 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Alaska Day (observed) +REM 19 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 18)) == 0] MSG Alaska Day (observed) diff --git a/include/holidays/us/as.rem b/include/holidays/us/as.rem index d5cb6bcc..da7dfe58 100644 --- a/include/holidays/us/as.rem +++ b/include/holidays/us/as.rem @@ -9,10 +9,10 @@ # If you want the national holidays as well, you must # also include [$SysInclude]/us.rem -REM 16 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG American Samoa Flag Day (observed) +REM 16 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 17)) == 6] MSG American Samoa Flag Day (observed) OMIT 17 April MSG American Samoa Flag Day -REM 18 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG American Samoa Flag Day (observed) -REM 15 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Manu'a Islands Cession Day (observed) +REM 18 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 17)) == 0] MSG American Samoa Flag Day (observed) +REM 15 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 16)) == 6] MSG Manu'a Islands Cession Day (observed) OMIT 16 July MSG Manu'a Islands Cession Day -REM 17 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Manu'a Islands Cession Day (observed) +REM 17 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 16)) == 0] MSG Manu'a Islands Cession Day (observed) REM Second Sunday in October SCANFROM -28 ADDOMIT MSG White Sunday diff --git a/include/holidays/us/ca.rem b/include/holidays/us/ca.rem index 77d8ced6..8892fb60 100644 --- a/include/holidays/us/ca.rem +++ b/include/holidays/us/ca.rem @@ -11,5 +11,5 @@ OMIT 15 February MSG Susan B. Anthony Day OMIT 31 March MSG Cesar Chavez Day -REM 1 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Cesar Chavez Day (observed) +REM 1 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 31)) == 0] MSG Cesar Chavez Day (observed) REM Friday 23 November ADDOMIT SCANFROM -28 MSG Day After Thanksgiving diff --git a/include/holidays/us/ct.rem b/include/holidays/us/ct.rem index eb9aa5ad..2cd9c6f2 100644 --- a/include/holidays/us/ct.rem +++ b/include/holidays/us/ct.rem @@ -9,7 +9,7 @@ # If you want the national holidays as well, you must # also include [$SysInclude]/us.rem -REM 11 February SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Lincoln's Birthday (observed) +REM 11 February SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 2, 12)) == 6] MSG Lincoln's Birthday (observed) OMIT 12 February MSG Lincoln's Birthday -REM 13 February SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Lincoln's Birthday (observed) +REM 13 February SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 2, 12)) == 0] MSG Lincoln's Birthday (observed) OMIT [easterdate($Uy)-2] MSG Good Friday diff --git a/include/holidays/us/dc.rem b/include/holidays/us/dc.rem index fe6a23a0..c795082a 100644 --- a/include/holidays/us/dc.rem +++ b/include/holidays/us/dc.rem @@ -9,7 +9,7 @@ # If you want the national holidays as well, you must # also include [$SysInclude]/us.rem -REM 15 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Emancipation Day (observed) +REM 15 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 16)) == 6] MSG Emancipation Day (observed) OMIT 16 April MSG Emancipation Day -REM 17 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Emancipation Day (observed) +REM 17 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 16)) == 0] MSG Emancipation Day (observed) REM Second Monday in October SCANFROM -28 ADDOMIT MSG Indigenous Peoples' Day diff --git a/include/holidays/us/hi.rem b/include/holidays/us/hi.rem index 12bcc178..957eee0f 100644 --- a/include/holidays/us/hi.rem +++ b/include/holidays/us/hi.rem @@ -9,10 +9,10 @@ # If you want the national holidays as well, you must # also include [$SysInclude]/us.rem -REM 25 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Prince Jonah Kuhio Kalanianaole Day (observed) +REM 25 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 26)) == 6] MSG Prince Jonah Kuhio Kalanianaole Day (observed) OMIT 26 March MSG Prince Jonah Kuhio Kalanianaole Day -REM 27 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Prince Jonah Kuhio Kalanianaole Day (observed) -REM 10 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Kamehameha Day (observed) +REM 27 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 26)) == 0] MSG Prince Jonah Kuhio Kalanianaole Day (observed) +REM 10 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 11)) == 6] MSG Kamehameha Day (observed) OMIT 11 June MSG Kamehameha Day -REM 12 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Kamehameha Day (observed) +REM 12 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 11)) == 0] MSG Kamehameha Day (observed) REM Third Friday in August SCANFROM -28 ADDOMIT MSG Statehood Day diff --git a/include/holidays/us/ia.rem b/include/holidays/us/ia.rem index 3162cef6..9cb2666e 100644 --- a/include/holidays/us/ia.rem +++ b/include/holidays/us/ia.rem @@ -9,6 +9,6 @@ # If you want the national holidays as well, you must # also include [$SysInclude]/us.rem -REM 11 February SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Lincoln's Birthday (observed) +REM 11 February SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 2, 12)) == 6] MSG Lincoln's Birthday (observed) OMIT 12 February MSG Lincoln's Birthday -REM 13 February SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Lincoln's Birthday (observed) +REM 13 February SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 2, 12)) == 0] MSG Lincoln's Birthday (observed) diff --git a/include/holidays/us/il.rem b/include/holidays/us/il.rem index d3cf422e..52a39252 100644 --- a/include/holidays/us/il.rem +++ b/include/holidays/us/il.rem @@ -9,7 +9,7 @@ # If you want the national holidays as well, you must # also include [$SysInclude]/us.rem -REM 11 February SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Lincoln's Birthday (observed) +REM 11 February SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 2, 12)) == 6] MSG Lincoln's Birthday (observed) OMIT 12 February MSG Lincoln's Birthday -REM 13 February SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Lincoln's Birthday (observed) +REM 13 February SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 2, 12)) == 0] MSG Lincoln's Birthday (observed) REM First Monday in March SCANFROM -28 ADDOMIT MSG Casimir Pulaski Day diff --git a/include/holidays/us/ks.rem b/include/holidays/us/ks.rem index 2244ae35..9b1f0701 100644 --- a/include/holidays/us/ks.rem +++ b/include/holidays/us/ks.rem @@ -9,7 +9,7 @@ # If you want the national holidays as well, you must # also include [$SysInclude]/us.rem -REM 22 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Christmas Eve (observed) -REM 23 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 4] MSG Christmas Eve (observed) -REM 23 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Christmas Eve (observed) +REM 22 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 24)) == 0] MSG Christmas Eve (observed) +REM 23 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 24)) == 5] MSG Christmas Eve (observed) +REM 23 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 24)) == 6] MSG Christmas Eve (observed) OMIT 24 December MSG Christmas Eve diff --git a/include/holidays/us/ky.rem b/include/holidays/us/ky.rem index 3cd1e1de..f995bd1f 100644 --- a/include/holidays/us/ky.rem +++ b/include/holidays/us/ky.rem @@ -9,7 +9,7 @@ # If you want the national holidays as well, you must # also include [$SysInclude]/us.rem -REM 1 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Eve (observed) +REM 1 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 31)) == 0] MSG New Year's Eve (observed) OMIT [easterdate($Uy)-2] MSG Good Friday -REM 30 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG New Year's Eve (observed) +REM 30 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 31)) == 6] MSG New Year's Eve (observed) OMIT 31 December MSG New Year's Eve diff --git a/include/holidays/us/ma.rem b/include/holidays/us/ma.rem index 8d633562..d46f6fb1 100644 --- a/include/holidays/us/ma.rem +++ b/include/holidays/us/ma.rem @@ -10,6 +10,6 @@ # also include [$SysInclude]/us.rem OMIT 17 March MSG Evacuation Day -REM 18 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Evacuation Day (observed) -REM 19 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Evacuation Day (observed) +REM 18 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 17)) == 0] MSG Evacuation Day (observed) +REM 19 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 17)) == 6] MSG Evacuation Day (observed) REM Third Monday in April SCANFROM -28 ADDOMIT MSG Patriots' Day diff --git a/include/holidays/us/mi.rem b/include/holidays/us/mi.rem index 10c59a25..66f1d362 100644 --- a/include/holidays/us/mi.rem +++ b/include/holidays/us/mi.rem @@ -9,10 +9,10 @@ # If you want the national holidays as well, you must # also include [$SysInclude]/us.rem -REM 1 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Eve (observed) -REM 22 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Christmas Eve (observed) -REM 23 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 4] MSG Christmas Eve (observed) -REM 23 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Christmas Eve (observed) +REM 1 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 31)) == 0] MSG New Year's Eve (observed) +REM 22 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 24)) == 0] MSG Christmas Eve (observed) +REM 23 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 24)) == 5] MSG Christmas Eve (observed) +REM 23 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 24)) == 6] MSG Christmas Eve (observed) OMIT 24 December MSG Christmas Eve -REM 30 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG New Year's Eve (observed) +REM 30 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 31)) == 6] MSG New Year's Eve (observed) OMIT 31 December MSG New Year's Eve diff --git a/include/holidays/us/mo.rem b/include/holidays/us/mo.rem index 066f3812..375c806a 100644 --- a/include/holidays/us/mo.rem +++ b/include/holidays/us/mo.rem @@ -9,6 +9,6 @@ # If you want the national holidays as well, you must # also include [$SysInclude]/us.rem -REM 7 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Truman Day (observed) +REM 7 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 8)) == 6] MSG Truman Day (observed) OMIT 8 May MSG Truman Day -REM 9 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Truman Day (observed) +REM 9 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 8)) == 0] MSG Truman Day (observed) diff --git a/include/holidays/us/mp.rem b/include/holidays/us/mp.rem index d6d33dc9..5fff14e2 100644 --- a/include/holidays/us/mp.rem +++ b/include/holidays/us/mp.rem @@ -9,14 +9,14 @@ # If you want the national holidays as well, you must # also include [$SysInclude]/us.rem -REM 23 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Commonwealth Covenant Day (observed) +REM 23 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 24)) == 6] MSG Commonwealth Covenant Day (observed) OMIT 24 March MSG Commonwealth Covenant Day -REM 25 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Commonwealth Covenant Day (observed) +REM 25 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 24)) == 0] MSG Commonwealth Covenant Day (observed) OMIT [easterdate($Uy)-2] MSG Good Friday REM Second Monday in October SCANFROM -28 ADDOMIT MSG Commonwealth Cultural Day -REM 3 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Citizenship Day (observed) +REM 3 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 4)) == 6] MSG Citizenship Day (observed) OMIT 4 November MSG Citizenship Day -REM 5 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Citizenship Day (observed) -REM 7 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Constitution Day (observed) +REM 5 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 4)) == 0] MSG Citizenship Day (observed) +REM 7 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 8)) == 6] MSG Constitution Day (observed) OMIT 8 December MSG Constitution Day -REM 9 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Constitution Day (observed) +REM 9 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 8)) == 0] MSG Constitution Day (observed) diff --git a/include/holidays/us/nc.rem b/include/holidays/us/nc.rem index f9a43745..97c33c64 100644 --- a/include/holidays/us/nc.rem +++ b/include/holidays/us/nc.rem @@ -11,11 +11,11 @@ OMIT [easterdate($Uy)-2] MSG Good Friday REM Friday 23 November ADDOMIT SCANFROM -28 MSG Day After Thanksgiving -REM 22 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Christmas Eve (observed) -REM 23 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 4] MSG Christmas Eve (observed) -REM 23 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Christmas Eve (observed) +REM 22 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 24)) == 0] MSG Christmas Eve (observed) +REM 23 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 24)) == 5] MSG Christmas Eve (observed) +REM 23 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 24)) == 6] MSG Christmas Eve (observed) OMIT 24 December MSG Christmas Eve OMIT 26 December MSG Day After Christmas -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Day After Christmas (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Day After Christmas (observed) -REM 28 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Day After Christmas (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Day After Christmas (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 1] MSG Day After Christmas (observed) +REM 28 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 6] MSG Day After Christmas (observed) diff --git a/include/holidays/us/nj.rem b/include/holidays/us/nj.rem index b834e7c9..41110b47 100644 --- a/include/holidays/us/nj.rem +++ b/include/holidays/us/nj.rem @@ -9,7 +9,7 @@ # If you want the national holidays as well, you must # also include [$SysInclude]/us.rem -REM 11 February SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Lincoln's Birthday (observed) +REM 11 February SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 2, 12)) == 6] MSG Lincoln's Birthday (observed) OMIT 12 February MSG Lincoln's Birthday -REM 13 February SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Lincoln's Birthday (observed) +REM 13 February SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 2, 12)) == 0] MSG Lincoln's Birthday (observed) OMIT [easterdate($Uy)-2] MSG Good Friday diff --git a/include/holidays/us/nv.rem b/include/holidays/us/nv.rem index ce05a8ec..953ffe75 100644 --- a/include/holidays/us/nv.rem +++ b/include/holidays/us/nv.rem @@ -9,7 +9,7 @@ # If you want the national holidays as well, you must # also include [$SysInclude]/us.rem -REM 24 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Nevada Day (observed) -REM 26 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Nevada Day (observed) +REM 24 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 25)) == 6] MSG Nevada Day (observed) +REM 26 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 25)) == 0] MSG Nevada Day (observed) REM Last Friday in October SCANFROM -28 ADDOMIT MSG Nevada Day REM Friday 23 November ADDOMIT SCANFROM -28 MSG Family Day diff --git a/include/holidays/us/ny.rem b/include/holidays/us/ny.rem index 2ed315f0..d67ac3ab 100644 --- a/include/holidays/us/ny.rem +++ b/include/holidays/us/ny.rem @@ -9,7 +9,7 @@ # If you want the national holidays as well, you must # also include [$SysInclude]/us.rem -REM 11 February SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Lincoln's Birthday (observed) +REM 11 February SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 2, 12)) == 6] MSG Lincoln's Birthday (observed) OMIT 12 February MSG Lincoln's Birthday -REM 13 February SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Lincoln's Birthday (observed) +REM 13 February SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 2, 12)) == 0] MSG Lincoln's Birthday (observed) OMIT 15 February MSG Susan B. Anthony Day diff --git a/include/holidays/us/pr.rem b/include/holidays/us/pr.rem index 6807018c..478f3074 100644 --- a/include/holidays/us/pr.rem +++ b/include/holidays/us/pr.rem @@ -12,9 +12,9 @@ OMIT 6 January MSG Epiphany REM Third Monday in February SCANFROM -28 ADDOMIT MSG Presidents' Day OMIT 22 March MSG Emancipation Day -REM 23 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Emancipation Day (observed) +REM 23 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 22)) == 0] MSG Emancipation Day (observed) OMIT [easterdate($Uy)-2] MSG Good Friday OMIT 25 July MSG Constitution Day -REM 26 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Constitution Day (observed) +REM 26 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 25)) == 0] MSG Constitution Day (observed) OMIT 19 November MSG Discovery Day -REM 20 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Discovery Day (observed) +REM 20 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 19)) == 0] MSG Discovery Day (observed) diff --git a/include/holidays/us/tx.rem b/include/holidays/us/tx.rem index 6dfdee6f..e743a993 100644 --- a/include/holidays/us/tx.rem +++ b/include/holidays/us/tx.rem @@ -17,8 +17,8 @@ OMIT 21 April MSG San Jacinto Day OMIT 19 June MSG Emancipation Day In Texas OMIT 27 August MSG Lyndon Baines Johnson Day REM Friday 23 November ADDOMIT SCANFROM -28 MSG Friday After Thanksgiving -REM 22 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Christmas Eve (observed) -REM 23 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 4] MSG Christmas Eve (observed) -REM 23 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Christmas Eve (observed) +REM 22 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 24)) == 0] MSG Christmas Eve (observed) +REM 23 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 24)) == 5] MSG Christmas Eve (observed) +REM 23 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 24)) == 6] MSG Christmas Eve (observed) OMIT 24 December MSG Christmas Eve OMIT 26 December MSG Day After Christmas diff --git a/include/holidays/us/ut.rem b/include/holidays/us/ut.rem index eadeb665..6cdb1159 100644 --- a/include/holidays/us/ut.rem +++ b/include/holidays/us/ut.rem @@ -9,6 +9,6 @@ # If you want the national holidays as well, you must # also include [$SysInclude]/us.rem -REM 23 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Pioneer Day (observed) +REM 23 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 24)) == 6] MSG Pioneer Day (observed) OMIT 24 July MSG Pioneer Day -REM 25 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Pioneer Day (observed) +REM 25 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 24)) == 0] MSG Pioneer Day (observed) diff --git a/include/holidays/us/vt.rem b/include/holidays/us/vt.rem index 58141d14..7fdf6efd 100644 --- a/include/holidays/us/vt.rem +++ b/include/holidays/us/vt.rem @@ -10,6 +10,6 @@ # also include [$SysInclude]/us.rem REM First Tuesday in March SCANFROM -28 ADDOMIT MSG Town Meeting Day -REM 15 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Bennington Battle Day (observed) +REM 15 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 16)) == 6] MSG Bennington Battle Day (observed) OMIT 16 August MSG Bennington Battle Day -REM 17 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Bennington Battle Day (observed) +REM 17 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 16)) == 0] MSG Bennington Battle Day (observed) diff --git a/include/holidays/us/wi.rem b/include/holidays/us/wi.rem index a0100593..2cdadab1 100644 --- a/include/holidays/us/wi.rem +++ b/include/holidays/us/wi.rem @@ -9,11 +9,11 @@ # If you want the national holidays as well, you must # also include [$SysInclude]/us.rem -REM 1 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Eve (observed) +REM 1 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 31)) == 0] MSG New Year's Eve (observed) OMIT 15 February MSG Susan B. Anthony Day -REM 22 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Christmas Eve (observed) -REM 23 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 4] MSG Christmas Eve (observed) -REM 23 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Christmas Eve (observed) +REM 22 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 24)) == 0] MSG Christmas Eve (observed) +REM 23 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 24)) == 5] MSG Christmas Eve (observed) +REM 23 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 24)) == 6] MSG Christmas Eve (observed) OMIT 24 December MSG Christmas Eve -REM 30 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG New Year's Eve (observed) +REM 30 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 31)) == 6] MSG New Year's Eve (observed) OMIT 31 December MSG New Year's Eve diff --git a/include/holidays/us/wv.rem b/include/holidays/us/wv.rem index 593e61f6..91bc4c54 100644 --- a/include/holidays/us/wv.rem +++ b/include/holidays/us/wv.rem @@ -9,7 +9,7 @@ # If you want the national holidays as well, you must # also include [$SysInclude]/us.rem -REM 19 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG West Virginia Day (observed) +REM 19 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 20)) == 6] MSG West Virginia Day (observed) OMIT 20 June MSG West Virginia Day -REM 21 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG West Virginia Day (observed) +REM 21 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 20)) == 0] MSG West Virginia Day (observed) REM Friday 23 November ADDOMIT SCANFROM -28 MSG Day After Thanksgiving diff --git a/include/holidays/uy.rem b/include/holidays/uy.rem index 8328bd9e..535af4c1 100644 --- a/include/holidays/uy.rem +++ b/include/holidays/uy.rem @@ -16,20 +16,20 @@ REM [easterdate($Uy)-5] MSG Semana de Turismo REM [easterdate($Uy)-4] MSG Semana de Turismo REM [easterdate($Uy)-3] MSG Semana de Turismo REM [easterdate($Uy)-2] MSG Semana de Turismo -REM 17 April SCANFROM -28 SATISFY [$Tw == 1] MSG Desembarco de los 33 Orientales -REM 18 April SCANFROM -28 SATISFY [$Tw == 1] MSG Desembarco de los 33 Orientales +REM 17 April SCANFROM -28 SATISFY [wkdaynum(date($Ty, 4, 19)) == 3] MSG Desembarco de los 33 Orientales +REM 18 April SCANFROM -28 SATISFY [wkdaynum(date($Ty, 4, 19)) == 2] MSG Desembarco de los 33 Orientales REM 19 April MSG Desembarco de los 33 Orientales -REM 22 April SCANFROM -28 SATISFY [$Tw == 1] MSG Desembarco de los 33 Orientales -REM 23 April SCANFROM -28 SATISFY [$Tw == 1] MSG Desembarco de los 33 Orientales -REM 16 May SCANFROM -28 SATISFY [$Tw == 1] MSG Batalla de Las Piedras -REM 17 May SCANFROM -28 SATISFY [$Tw == 1] MSG Batalla de Las Piedras +REM 22 April SCANFROM -28 SATISFY [wkdaynum(date($Ty, 4, 19)) == 5] MSG Desembarco de los 33 Orientales +REM 23 April SCANFROM -28 SATISFY [wkdaynum(date($Ty, 4, 19)) == 4] MSG Desembarco de los 33 Orientales +REM 16 May SCANFROM -28 SATISFY [wkdaynum(date($Ty, 5, 18)) == 3] MSG Batalla de Las Piedras +REM 17 May SCANFROM -28 SATISFY [wkdaynum(date($Ty, 5, 18)) == 2] MSG Batalla de Las Piedras REM 18 May MSG Batalla de Las Piedras -REM 21 May SCANFROM -28 SATISFY [$Tw == 1] MSG Batalla de Las Piedras -REM 22 May SCANFROM -28 SATISFY [$Tw == 1] MSG Batalla de Las Piedras +REM 21 May SCANFROM -28 SATISFY [wkdaynum(date($Ty, 5, 18)) == 5] MSG Batalla de Las Piedras +REM 22 May SCANFROM -28 SATISFY [wkdaynum(date($Ty, 5, 18)) == 4] MSG Batalla de Las Piedras REM 19 June MSG Natalicio de Artigas -REM 10 October SCANFROM -28 SATISFY [$Tw == 1] MSG Día de la Diversidad Cultural -REM 11 October SCANFROM -28 SATISFY [$Tw == 1] MSG Día de la Diversidad Cultural +REM 10 October SCANFROM -28 SATISFY [wkdaynum(date($Ty, 10, 12)) == 3] MSG Día de la Diversidad Cultural +REM 11 October SCANFROM -28 SATISFY [wkdaynum(date($Ty, 10, 12)) == 2] MSG Día de la Diversidad Cultural REM 12 October MSG Día de la Diversidad Cultural -REM 15 October SCANFROM -28 SATISFY [$Tw == 1] MSG Día de la Diversidad Cultural -REM 16 October SCANFROM -28 SATISFY [$Tw == 1] MSG Día de la Diversidad Cultural +REM 15 October SCANFROM -28 SATISFY [wkdaynum(date($Ty, 10, 12)) == 5] MSG Día de la Diversidad Cultural +REM 16 October SCANFROM -28 SATISFY [wkdaynum(date($Ty, 10, 12)) == 4] MSG Día de la Diversidad Cultural REM 2 November MSG Día de los Difuntos diff --git a/include/holidays/vi.rem b/include/holidays/vi.rem index 9f33694b..4a9212dd 100644 --- a/include/holidays/vi.rem +++ b/include/holidays/vi.rem @@ -4,7 +4,7 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) OMIT 6 January MSG Three Kings Day REM Third Monday in January SCANFROM -28 ADDOMIT MSG Martin Luther King Jr. Day REM Third Monday in February SCANFROM -28 ADDOMIT MSG Presidents' Day @@ -13,25 +13,25 @@ OMIT [easterdate($Uy)-3] MSG Holy Thursday OMIT [easterdate($Uy)-2] MSG Good Friday OMIT [easterdate($Uy)+1] MSG Easter Monday REM Last Monday in May SCANFROM -28 ADDOMIT MSG Memorial Day -REM 18 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Juneteenth National Independence Day (observed) +REM 18 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 19)) == 6] MSG Juneteenth National Independence Day (observed) OMIT 19 June MSG Juneteenth National Independence Day -REM 20 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Juneteenth National Independence Day (observed) +REM 20 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 19)) == 0] MSG Juneteenth National Independence Day (observed) OMIT 3 July MSG Emancipation Day -REM 3 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Independence Day (observed) +REM 3 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 4)) == 6] MSG Independence Day (observed) OMIT 4 July MSG Independence Day -REM 5 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence Day (observed) +REM 5 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 4)) == 0] MSG Independence Day (observed) REM First Monday in September SCANFROM -28 ADDOMIT MSG Labor Day REM Second Monday in October SCANFROM -28 ADDOMIT MSG Columbus Day and Puerto Rico Friendship Day OMIT 1 November MSG Liberty Day -REM 10 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Veterans Day (observed) +REM 10 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 11)) == 6] MSG Veterans Day (observed) OMIT 11 November MSG Veterans Day -REM 12 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Veterans Day (observed) +REM 12 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 11)) == 0] MSG Veterans Day (observed) REM Fourth Thursday in November SCANFROM -28 ADDOMIT MSG Thanksgiving -REM 24 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG Christmas Day (observed) +REM 24 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 6] MSG Christmas Day (observed) OMIT 25 December MSG Christmas Day OMIT 26 December MSG Christmas Second Day -REM 26 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) -REM 31 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 5] MSG New Year's Day (observed) +REM 26 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed) +REM 31 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 6] MSG New Year's Day (observed) REM 14 February MSG Valentine's Day REM 17 March MSG Saint Patrick's Day REM 31 October MSG Halloween diff --git a/include/holidays/vu.rem b/include/holidays/vu.rem index abbabb6a..157a432c 100644 --- a/include/holidays/vu.rem +++ b/include/holidays/vu.rem @@ -4,27 +4,27 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) OMIT 21 February MSG Father Lini Day -REM 22 February SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Father Lini Day (observed) +REM 22 February SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 2, 21)) == 0] MSG Father Lini Day (observed) OMIT 5 March MSG Custom Chief's Day -REM 6 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Custom Chief's Day (observed) +REM 6 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 5)) == 0] MSG Custom Chief's Day (observed) OMIT [easterdate($Uy)-2] MSG Good Friday OMIT [easterdate($Uy)+1] MSG Easter Monday OMIT 1 May MSG Labour Day -REM 2 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Labour Day (observed) +REM 2 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Labour Day (observed) OMIT [easterdate($Uy)+39] MSG Ascension Day OMIT 24 July MSG Children's Day -REM 25 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Children's Day (observed) +REM 25 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 24)) == 0] MSG Children's Day (observed) OMIT 30 July MSG Independence Day -REM 31 July SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence Day (observed) +REM 31 July SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 7, 30)) == 0] MSG Independence Day (observed) OMIT 15 August MSG Assumption Day -REM 16 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Assumption Day (observed) +REM 16 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 15)) == 0] MSG Assumption Day (observed) OMIT 5 October MSG Constitution Day -REM 6 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Constitution Day (observed) +REM 6 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 5)) == 0] MSG Constitution Day (observed) OMIT 29 November MSG Unity Day -REM 30 November SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Unity Day (observed) +REM 30 November SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 11, 29)) == 0] MSG Unity Day (observed) OMIT 25 December MSG Christmas Day OMIT 26 December MSG Family Day -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Family Day (observed) -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 2] MSG Family Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Family Day (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 1] MSG Family Day (observed) diff --git a/include/holidays/za.rem b/include/holidays/za.rem index fe9c9ed7..5e5f7f30 100644 --- a/include/holidays/za.rem +++ b/include/holidays/za.rem @@ -4,23 +4,23 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) OMIT 21 March MSG Human Rights Day -REM 22 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Human Rights Day (observed) +REM 22 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 21)) == 0] MSG Human Rights Day (observed) OMIT [easterdate($Uy)-2] MSG Good Friday OMIT [easterdate($Uy)+1] MSG Family Day OMIT 27 April MSG Freedom Day -REM 28 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Freedom Day (observed) +REM 28 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 27)) == 0] MSG Freedom Day (observed) OMIT 1 May MSG Workers' Day -REM 2 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Workers' Day (observed) +REM 2 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Workers' Day (observed) OMIT 16 June MSG Youth Day -REM 17 June SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Youth Day (observed) +REM 17 June SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 6, 16)) == 0] MSG Youth Day (observed) OMIT 9 August MSG National Women's Day -REM 10 August SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG National Women's Day (observed) +REM 10 August SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 8, 9)) == 0] MSG National Women's Day (observed) OMIT 24 September MSG Heritage Day -REM 25 September SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Heritage Day (observed) +REM 25 September SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 9, 24)) == 0] MSG Heritage Day (observed) OMIT 16 December MSG Day of Reconciliation -REM 17 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Day of Reconciliation (observed) +REM 17 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 16)) == 0] MSG Day of Reconciliation (observed) OMIT 25 December MSG Christmas Day OMIT 26 December MSG Day of Goodwill -REM 27 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Day of Goodwill (observed) +REM 27 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 26)) == 0] MSG Day of Goodwill (observed) diff --git a/include/holidays/zm.rem b/include/holidays/zm.rem index 258d9e17..3bff1f51 100644 --- a/include/holidays/zm.rem +++ b/include/holidays/zm.rem @@ -4,26 +4,26 @@ # https://github.com/vacanza/holidays OMIT 1 January MSG New Year's Day -REM 2 January SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG New Year's Day (observed) +REM 2 January SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 1, 1)) == 0] MSG New Year's Day (observed) OMIT 8 March MSG International Women's Day -REM 9 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG International Women's Day (observed) +REM 9 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 8)) == 0] MSG International Women's Day (observed) OMIT 12 March MSG Youth Day -REM 13 March SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Youth Day (observed) +REM 13 March SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 3, 12)) == 0] MSG Youth Day (observed) OMIT [easterdate($Uy)-2] MSG Good Friday OMIT [easterdate($Uy)-1] MSG Holy Saturday OMIT [easterdate($Uy)+1] MSG Easter Monday OMIT 28 April MSG Kenneth Kaunda Day -REM 29 April SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Kenneth Kaunda Day (observed) +REM 29 April SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 4, 28)) == 0] MSG Kenneth Kaunda Day (observed) OMIT 1 May MSG Labour Day -REM 2 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Labour Day (observed) +REM 2 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 1)) == 0] MSG Labour Day (observed) OMIT 25 May MSG Africa Freedom Day -REM 26 May SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Africa Freedom Day (observed) +REM 26 May SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 5, 25)) == 0] MSG Africa Freedom Day (observed) REM First Monday in July SCANFROM -28 ADDOMIT MSG Heroes' Day REM Tuesday 2 July ADDOMIT SCANFROM -28 MSG Unity Day REM First Monday in August SCANFROM -28 ADDOMIT MSG Farmers' Day OMIT 18 October MSG National Prayer Day -REM 19 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG National Prayer Day (observed) +REM 19 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 18)) == 0] MSG National Prayer Day (observed) OMIT 24 October MSG Independence Day -REM 25 October SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Independence Day (observed) +REM 25 October SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 10, 24)) == 0] MSG Independence Day (observed) OMIT 25 December MSG Christmas Day -REM 26 December SCANFROM -28 ADDOMIT SATISFY [$Tw == 1] MSG Christmas Day (observed) +REM 26 December SCANFROM -28 ADDOMIT SATISFY [wkdaynum(date($Ty, 12, 25)) == 0] MSG Christmas Day (observed)