if (nsnull!=mColumnWidths) result = mColumnWidths[aColIndex];
} else { result = firstInFlow->GetColumnWidth(aColIndex);
PRInt32 nsTableFrame::GetColumnWidth(PRInt32 aColIndex){  nsTableFrame * firstInFlow = (nsTableFrame *)GetFirstInFlow();  NS_ASSERTION(nsnull!=firstInFlow, "illegal state -- no first in flow");  PRInt32 result = 0;  if (this!=firstInFlow)    result = firstInFlow->GetColumnWidth(aColIndex);  else  {    // Because we lazily allocate the column widths when balancing the    // columns, it may not be allocated yet. For example, if this is    // an incremental reflow. That's okay, just return 0 for the column    // width#ifdef NS_DEBUG    nsTableCellMap* cellMap = GetCellMap();    if (!cellMap) {      NS_ASSERTION(PR_FALSE, "no cell map");      return 0;    }    PRInt32 numCols = cellMap->GetColCount();    NS_ASSERTION (numCols > aColIndex, "bad arg, col index out of bounds");#endif    if (nsnull!=mColumnWidths)     result = mColumnWidths[aColIndex];  }  return result;}