# SPDX-License-Identifier: MIT
# Holiday file for South Africa
# Derived from the Python holidays project at
# https://github.com/vacanza/holidays
#
# See important caveats in the README file in this directory.

OMIT 1 January MSG %"New Year's Day%" %! %b.
REM 2 January ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"New Year's Day (observed)%" %! %b.
OMIT 21 March MSG %"Human Rights Day%" %! %b.
REM 22 March ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Human Rights Day (observed)%" %! %b.
OMIT [easterdate($Uy)-2] MSG %"Good Friday%" %! %b.
OMIT [easterdate($Uy)+1] MSG %"Family Day%" %! %b.
OMIT 27 April MSG %"Freedom Day%" %! %b.
REM 28 April ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Freedom Day (observed)%" %! %b.
OMIT 1 May MSG %"Workers' Day%" %! %b.
REM 2 May ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Workers' Day (observed)%" %! %b.
OMIT 16 June MSG %"Youth Day%" %! %b.
REM 17 June ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Youth Day (observed)%" %! %b.
OMIT 9 August MSG %"National Women's Day%" %! %b.
REM 10 August ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"National Women's Day (observed)%" %! %b.
OMIT 24 September MSG %"Heritage Day%" %! %b.
REM 25 September ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Heritage Day (observed)%" %! %b.
OMIT 16 December MSG %"Day of Reconciliation%" %! %b.
REM 17 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Day of Reconciliation (observed)%" %! %b.
OMIT 25 December MSG %"Christmas Day%" %! %b.
OMIT 26 December MSG %"Day of Goodwill%" %! %b.
REM 27 December ADDOMIT SCANFROM -28 SATISFY [wkdaynum($T-1) == 0] MSG %"Day of Goodwill (observed)%" %! %b.
