Column overlapping

I have this template:

$(go.Panel, “Table”,
{
maxSize: new go.Size(150, 999),
margin: new go.Margin(3, 3, 0, 3),
defaultAlignment: go.Spot.Left
},
$(go.RowColumnDefinition, { column: 2 }),
$(go.TextBlock, // the firstname
{
row: 0, column: 0, columnSpan: 5,
font: “bold 9pt sans-serif”,
editable: <?php echo ($fromopportunity ? "false" : "true"); ?>, isMultiline: false,
stroke: “white”, minSize: new go.Size(10, 14)
},
new go.Binding(“text”, “firstname”).makeTwoWay()),
$(go.TextBlock, // the lastname
{
row: 0, column: 1, columnSpan: 5,
font: “bold 9pt sans-serif”,
editable: <?php echo ($fromopportunity ? "false" : "true"); ?>, isMultiline: false,
stroke: “white”, minSize: new go.Size(10, 14)
},
new go.Binding(“text”, “lastname”).makeTwoWay()),
$(go.TextBlock, "Title: ", textStyle(),
{ row: 1, column: 0 }),
$(go.TextBlock, textStyle(),
{
row: 1, column: 1, columnSpan: 4,
editable: <?php echo ($fromopportunity ? "false" : "true"); ?>, isMultiline: false,
minSize: new go.Size(10, 14),
margin: new go.Margin(0, 0, 0, 3)
},
new go.Binding(“text”, “title”).makeTwoWay()),
$(go.TextBlock, "email: ", textStyle(), // the ID and the boss
{ row: 2, column: 0 }),
$(go.TextBlock, textStyle(),
{ row: 2, column: 1 },
new go.Binding(“text”, “email”)),
$(go.TextBlock, textStyle(),
{ row: 2, column: 4, },
new go.Binding(“text”, “parent”)),
$(go.TextBlock, // the comments
{
row: 3, column: 0, columnSpan: 5,
font: “italic 9pt sans-serif”,
wrap: go.TextBlock.WrapFit,
editable: <?php echo ($fromopportunity ? "false" : "true"); ?>,
stroke: “white”,
minSize: new go.Size(10, 14)
},
new go.Binding(“text”, “comments”).makeTwoWay()),
$(“TreeExpanderButton”,
{ row: 4, columnSpan: 99, alignment: go.Spot.Center })
My idea is to have last name just after firstname.

This is what I get

I’m not totally sure why first column takes the space of second column and how to avoid this behaviour

I really can’t tell when the code is not properly indented. Enclose the code with lines of triple-backquotes to format the text as if were code.