def add_minutes(number, &block)
      # new minute is going to be (current minute + number) % 60
      # number of hours to add is (current minute + number) / 60
      hours_to_add = (min + number) / 60
      # note add_hours returns a new time object
      if block_given?
        o = add_hours(hours_to_add, &block)
      else
        o = add_hours(hours_to_add)
      end
      o.change_minute_to((o.min + number) % 60)  # modifies self
    end
def add_minutes(number, &block)
      # new minute is going to be (current minute + number) % 60
      # number of hours to add is (current minute + number) / 60
      hours_to_add = (min + number) / 60
      # note add_hours returns a new time object
      if block_given?
        o = add_hours(hours_to_add, &block)
      else
        o = add_hours(hours_to_add)
      end
      o.change_minute_to((o.min + number) % 60)  # modifies self
    end
add\_ methods return new ZTime object
 add\_ methods take an optional block, the block will be passed the number of days that have passed;
 i.e. adding 48 hours will pass a 2 to the block, this is handy for something like this:
 time.add_hours(15) {|x| date.add_days(x)}