
    !g                         d dl mZ d dlmZmZmZ d dlmZ  G d deee      Z G d de      Z	 G d d	e      Z
 G d
 de      Z G d d      Zy)    )DEC)ChristianHolidaysInternationalHolidaysStaticHolidays)HolidayBasec                   0     e Zd ZdZdZdZ fdZd Z xZS )EuropeanCentralBanka5  
    References:
        - https://en.wikipedia.org/wiki/TARGET2
        - https://www.ecb.europa.eu/ecb/contacts/working-hours/html/index.en.html
        - https://www.ecb.europa.eu/press/pr/date/1999/html/pr990715_1.en.html
        - https://www.ecb.europa.eu/press/pr/date/2000/html/pr001214_4.en.html
    XECB  c                     t        j                  |        t        j                  |        t        j                  | t               t        |   |i | y )N)r   __init__r   r   !EuropeanCentralBankStaticHolidayssuper)selfargskwargs	__class__s      e/var/www/dash_apps/app1/venv/lib/python3.12/site-packages/holidays/financial/european_central_bank.pyr   zEuropeanCentralBank.__init__   sB    ""4(&&t,&GH$)&)    c                     | j                  d       | j                  d       | j                  d       | j                  d       | j	                  d       | j                  d       y )NzNew Year's DayzGood FridayzEaster Mondayz
Labour DayzChristmas DayzChristmas Holiday)_add_new_years_day_add_good_friday_add_easter_monday_add_labor_day_add_christmas_day_add_christmas_day_two)r   s    r   _populate_public_holidaysz-EuropeanCentralBank._populate_public_holidays$   sX     01m,0L)0##$78r   )	__name__
__module____qualname____doc__market
start_yearr   r   __classcell__)r   s   @r   r	   r	      s     FJ*9r   r	   c                       e Zd Zy)r
   Nr   r   r     r   r   r
   r
   2       r   r
   c                       e Zd Zy)ECBNr&   r'   r   r   r*   r*   6   r(   r   r*   c                       e Zd Zy)TARNr&   r'   r   r   r,   r,   :   r(   r   r,   c                       e Zd ZdeddfiZy)r   r      zAdditional closing dayN)r   r   r    r   special_public_holidaysr'   r   r   r   r   >   s    sB01r   r   N)holidays.calendars.gregorianr   holidays.groupsr   r   r   holidays.holiday_baser   r	   r
   r*   r,   r   r'   r   r   <module>r3      sW    - T T -9+'8:O 9@	 		
 		
 	 r   