def add_marks(marks=nil)
      marks.each_pair {|k,v| self[k]=v} if marks
      if block_given?
        result = yield self
        add_marks(result) if Hash===result
      end
    end
def add_marks(marks=nil)
      marks.each_pair {|k,v| self[k]=v} if marks
      if block_given?
        result = yield self
        add_marks(result) if Hash===result
      end
    end
Add all marks provided by a Hash instance _marks_.