anchor.diff:          let name = makeUnique (getName (sprintf "Table%d" (index + 1)) table parents)
   
           let res = Array.init rows.Length (fun _ -> Array.init numberOfColumns (fun _ -> Empty))
  -        for rowindex, node in rows do
  +        for rowindex, _ in rows do
               for colindex, cell in cells.[rowindex] do
                   let rowSpan = max 1 (defaultArg (TextConversions.AsInteger CultureInfo.InvariantCulture cell?rowspan) 0) - 1
                   let colSpan = max 1 (defaultArg (TextConversions.AsInteger CultureInfo.InvariantCulture cell?colspan) 0) - 1
  
positive.code: 
                  Some hasHeaders, Some headerNamesAndUnits, inferedProperties
  
          { Name = name
            HeaderNamesAndUnits = headerNamesAndUnits
            InferedProperties = inferedProperties
            HasHeaders = hasHeaders
            Rows = res 
            Html = table } |> Some
  
      let private parseList makeUnique index (list:HtmlNode, parents:HtmlNode list) =
  
negative.code:         | Empty -> ""
          | Cell(_, d) -> d
  
  type HtmlTable = 
      { Name : string
        HeaderNamesAndUnits : (string * Type option)[] option // always set at designtime, never at runtime
        InferedProperties : PrimitiveInferedProperty list option // sometimes set at designtime, never at runtime
        HasHeaders: bool option // always set at designtime, never at runtime
        Rows :  string [] []
        Html : HtmlNode }
      override x.ToString() =
          let sb = StringBuilder()
          use wr = new StringWriter(sb) 
          wr.WriteLine(x.Name)
          let data = array2D x.Rows
          let rows = data.GetLength(0)
          let columns = data.GetLength(1)
          let widths = Array.zeroCreate columns 
          data |> Array2D.iteri (fun _ c cell ->
              widths.[c] <- max (widths.[c]) (cell.Length))
          for r in 0 .. rows - 1 do
              for c in 0 .. columns - 1 do
                  wr.Write(data.[r,c].PadRight(widths.[c] + 1))
              wr.WriteLine()
          sb.ToString()
  
  