@property<EOL><INDENT>def first_day(self):<DEDENT>
day_iter = self<EOL>while (day_iter.previous_day.is_yom_tov or<EOL>day_iter.previous_day.is_shabbat):<EOL><INDENT>day_iter = day_iter.previous_day<EOL><DEDENT>return day_iter<EOL>
Return the first day of Yom Tov or Shabbat.

        This is useful for three-day holidays, for example: it will return the
        first in a string of Yom Tov + Shabbat.
        If this HDate is Shabbat followed by no Yom Tov, returns the Saturday.
        If this HDate is neither Yom Tov, nor Shabbat, this just returns
        itself.