# File lib/ice_cube/validations/day_of_week.rb, line 33
      def validate(step_time, start_time)
        wday = step_time.wday
        offset = (day < wday) ? (7 - wday + day) : (day - wday)
        wrapper = TimeUtil::TimeWrapper.new(step_time)
        wrapper.add :day, offset
        loop do
          which_occ, num_occ = TimeUtil.which_occurrence_in_month(wrapper.to_time, day)
          this_occ = (occ < 0) ? (num_occ + occ + 1) : (occ)
          break offset if which_occ == this_occ
          wrapper.add :day, 7
          offset += 7
        end
      end