code: def create_row(key, line)
        row = rows[key] || rows[key] = { key: key, cols: Hash.new(0) }  
        @cols.each do |col|
          column, formula = col.split(':')
          column = evaluate(column) if column =~ /^\(?c\d+[=~+.]/
          previous_value = row[:cols][column]
          if value = eval("#{row[:cols][column]}#{formula}")
            row[:cols][column] = @precision ? value.round(@precision) : value
            add_to_sum_row(row[:cols][column] - previous_value, column)
          end
        end
      end
docs: Creates a table row based on the column pattern
   Examples of column patterns
   * Value:+n1             Adds content of column 1 to Value column
   * Value:+n1,c2+c3:+n1   Creates a dynamic column and adds column 1 value
   * c0=~/\\.(\\d{4})/:+n1 Creates dynamic column from regex and adds
                           column 1 value