def time
      if Time.respond_to?(:zone) && Time.zone
        self.class.send(:define_method, :time) { Time.zone.now.to_s }
      else
        self.class.send(:define_method, :time) { Time.now.to_s }
      end
      time
    end
def time
      if Time.respond_to?(:zone) && Time.zone
        self.class.send(:define_method, :time) { Time.zone.now.to_s }
      else
        self.class.send(:define_method, :time) { Time.now.to_s }
      end
      time
    end
time redefines itself with a faster implementation, since it gets called a lot.