module Holidays::AU

def self.custom_methods

def self.custom_methods
  {
      "afl_grand_final(year)" => Proc.new { |year|
 year
 2015
te.civil(2015, 10, 2)
 2016
te.civil(2016, 9, 30)
 2017
te.civil(2017, 9, 29)
 2018
te.civil(2018, 9, 28)
 2019
te.civil(2019,9, 27)
 2020
te.civil(2020, 10, 23)
_queens_bday_october(year)" => Proc.new { |year|
ear >= 2016
lidays::Factory::DateCalculator.day_of_month_calculator.call(year, 10, 1, 1)
f year == 2012

l
_queens_birthday_june(year)" => Proc.new { |year|
ear <= 2015
lidays::Factory::DateCalculator.day_of_month_calculator.call(year, 6, 2, 1)
_labour_day_may(year)" => Proc.new { |year|
ear < 2013 || year >= 2016
lidays::Factory::DateCalculator.day_of_month_calculator.call(year, 5, 1, 1)
_labour_day_october(year)" => Proc.new { |year|
ear >= 2013 && year < 2016
lidays::Factory::DateCalculator.day_of_month_calculator.call(year, 10, 1, 1)
_day_2014_only(year)" => Proc.new { |year|
 == 2014 ? 14 : nil
art_show_day(year)" => Proc.new { |year|
th_sat_in_oct = Date.civil(year, 10, Holidays::Factory::DateCalculator.day_of_month_calculator.call(year, 10, 4, :saturday))
th_sat_in_oct - 2 # the thursday before
ch_pub_hol_sa(year)" => Proc.new { |year|
ear < 2006
l

te.civil(year, 3, Holidays::Factory::DateCalculator.day_of_month_calculator.call(year, 3, :second, :monday))
_pub_hol_sa(year)" => Proc.new { |year|
ear >= 2006
l

te.civil(year, 5, Holidays::Factory::DateCalculator.day_of_month_calculator.call(year, 5, :third, :monday))
_brisbane_ekka_holiday(year)" => Proc.new { |year|
t_friday = Holidays::Factory::DateCalculator.day_of_month_calculator.call(year, 8, :first, :friday)
irst_friday < 5
cond_friday = Date.civil(year, 8, Holidays::Factory::DateCalculator.day_of_month_calculator.call(year, 8, :second, :friday))
cond_friday + 5 # The next Wednesday

te.civil(year, 8, first_friday) + 5
  }
end

def self.defined_regions

:nodoc:
All the definitions are available at https://github.com/holidays/holidays

Definitions loaded: definitions/au.yaml

This file is generated by the Ruby Holidays gem.
def self.defined_regions
  [:au, :au_nsw, :au_vic, :au_qld, :au_nt, :au_act, :au_sa, :au_wa, :au_tas, :au_tas_south, :au_qld_cairns, :au_qld_brisbane, :au_tas_north, :au_vic_melbourne]
end

def self.holidays_by_month

def self.holidays_by_month
  {
            0 => [{:function => "easter(year)", :function_arguments => [:year], :function_modifier => -2, :name => "Good Friday", :regions => [:au]},
        {:function => "easter(year)", :function_arguments => [:year], :function_modifier => -1, :name => "Easter Saturday", :regions => [:au_nsw, :au_vic, :au_qld, :au_nt, :au_act, :au_sa]},
        {:function => "easter(year)", :function_arguments => [:year], :name => "Easter Sunday", :regions => [:au_nsw, :au_vic]},
        {:function => "easter(year)", :function_arguments => [:year], :year_ranges => { :from => 2017 },:name => "Easter Sunday", :regions => [:au_qld, :au_act]},
        {:function => "easter(year)", :function_arguments => [:year], :function_modifier => 1, :name => "Easter Monday", :regions => [:au]}],
  1 => [{:mday => 1, :observed => "to_monday_if_weekend(date)", :observed_arguments => [:date], :name => "New Year's Day", :regions => [:au, :au_nsw, :au_vic, :au_act, :au_sa, :au_wa, :au_nt, :au_qld]},
        {:mday => 1, :function => "to_monday_if_weekend(date)", :function_arguments => [:date], :name => "New Year's Day", :regions => [:au_tas]},
        {:mday => 26, :observed => "to_monday_if_weekend(date)", :observed_arguments => [:date], :name => "Australia Day", :regions => [:au]}],
  2 => [{:wday => 1, :week => 2, :name => "Royal Hobart Regatta", :regions => [:au_tas_south]}],
  3 => [{:wday => 1, :week => 1, :name => "Labour Day", :regions => [:au_wa]},
        {:wday => 1, :week => 2, :name => "Eight Hours Day", :regions => [:au_tas]},
        {:wday => 1, :week => 2, :name => "Labour Day", :regions => [:au_vic]},
        {:function => "march_pub_hol_sa(year)", :function_arguments => [:year], :name => "March Public Holiday", :regions => [:au_sa]},
        {:wday => 1, :week => 2, :name => "Canberra Day", :regions => [:au_act]}],
  4 => [{:mday => 25, :name => "ANZAC Day", :regions => [:au, :au_vic]},
        {:mday => 25, :observed => "to_monday_if_sunday(date)", :observed_arguments => [:date], :name => "ANZAC Day", :regions => [:au_nsw, :au_qld, :au_nt, :au_act, :au_sa, :au_tas]},
        {:mday => 25, :observed => "to_monday_if_weekend(date)", :observed_arguments => [:date], :name => "ANZAC Day", :regions => [:au_wa]}],
  5 => [{:function => "qld_labour_day_may(year)", :function_arguments => [:year], :name => "Labour Day", :regions => [:au_qld]},
        {:wday => 1, :week => 1, :name => "May Day", :regions => [:au_nt]},
        {:function => "may_pub_hol_sa(year)", :function_arguments => [:year], :name => "May Public Holiday", :regions => [:au_sa]}],
  6 => [{:wday => 1, :week => 1, :name => "Western Australia Day", :regions => [:au_wa]},
        {:wday => 1, :week => 2, :name => "Queen's Birthday", :regions => [:au_act, :au_nsw, :au_sa, :au_tas, :au_nt, :au_vic]},
        {:function => "qld_queens_birthday_june(year)", :function_arguments => [:year], :name => "Queen's Birthday", :regions => [:au_qld]},
        {:mday => 6, :type => :informal, :name => "Queensland Day", :regions => [:au_qld]}],
  7 => [{:wday => 5, :week => 3, :name => "Cairns Show", :regions => [:au_qld_cairns]}],
  8 => [{:function => "qld_brisbane_ekka_holiday(year)", :function_arguments => [:year], :name => "Ekka", :regions => [:au_qld_brisbane]}],
  9 => [{:mday => 22, :year_ranges => { :limited => [2022] },:name => "National Day of Mourning for Her Majesty Queen Elizabeth II", :regions => [:au]},
        {:wday => 1, :week => -1, :name => "Queen's Birthday", :regions => [:au_wa]},
        {:wday => 1, :week => -1, :name => "Family & Community Day", :regions => [:au_act]}],
  10 => [{:function => "afl_grand_final(year)", :function_arguments => [:year], :name => "Friday before the AFL Grand Final", :regions => [:au_vic]},
        {:wday => 1, :week => 1, :name => "Labour Day", :regions => [:au_act, :au_nsw, :au_sa]},
        {:function => "qld_labour_day_october(year)", :function_arguments => [:year], :observed => "to_monday_if_weekend(date)", :observed_arguments => [:date], :name => "Labour Day", :regions => [:au_qld]},
        {:function => "qld_queens_bday_october(year)", :function_arguments => [:year], :observed => "to_monday_if_weekend(date)", :observed_arguments => [:date], :name => "Queen's Birthday", :regions => [:au_qld]},
        {:function => "hobart_show_day(year)", :function_arguments => [:year], :name => "Royal Hobart Show", :regions => [:au_tas_south]}],
  11 => [{:function => "g20_day_2014_only(year)", :function_arguments => [:year], :name => "G20 Day", :regions => [:au_qld_brisbane]},
        {:wday => 1, :week => 1, :name => "Recreation Day", :regions => [:au_tas_north]},
        {:wday => 2, :week => 1, :name => "Melbourne Cup Day", :regions => [:au_vic_melbourne]}],
  12 => [{:mday => 25, :observed => "to_tuesday_if_sunday_or_monday_if_saturday(date)", :observed_arguments => [:date], :name => "Christmas Day", :regions => [:au_qld, :au_nsw, :au_act, :au_tas, :au_wa, :au_vic, :au_nt]},
        {:mday => 26, :observed => "to_tuesday_if_sunday_or_monday_if_saturday(date)", :observed_arguments => [:date], :name => "Boxing Day", :regions => [:au_nsw, :au_vic, :au_qld, :au_act, :au_wa]},
        {:function => "to_weekday_if_boxing_weekend_from_year(year)", :function_arguments => [:year], :name => "Boxing Day", :regions => [:au_tas, :au_nt]},
        {:function => "to_weekday_if_boxing_weekend_from_year_or_to_tuesday_if_monday(year)", :function_arguments => [:year], :name => "Proclamation Day", :regions => [:au_sa]},
        {:mday => 25, :observed => "to_monday_if_weekend(date)", :observed_arguments => [:date], :name => "Christmas Day", :regions => [:au_sa]}]
  }
end