require 'date' leap_year_day = Date.new(1996, 2, 29) (leap_year_day << 1).to_s # => "1996-01-29" (leap_year_day >> 1).to_s # => "1996-03-29" (leap_year_day >> 12).to_s # => "1997-02-28" (leap_year_day << 12 * 4).to_s # => "1992-02-29"