kidFrame->GetNextSibling(&kidFrame);
kidFrame = kidFrame->GetNextSibling();
nsTableFrame::GetFirstBodyRowGroupFrame(){  nsIFrame* headerFrame = nsnull;  nsIFrame* footerFrame = nsnull;  for (nsIFrame* kidFrame = mFrames.FirstChild(); nsnull != kidFrame; ) {    const nsStyleDisplay *childDisplay;    kidFrame->GetStyleData(eStyleStruct_Display, ((const nsStyleStruct *&)childDisplay));    // We expect the header and footer row group frames to be first, and we only    // allow one header and one footer    if (NS_STYLE_DISPLAY_TABLE_HEADER_GROUP == childDisplay->mDisplay) {      if (headerFrame) {        // We already have a header frame and so this header frame is treated        // like an ordinary body row group frame        return kidFrame;      }      headerFrame = kidFrame;        } else if (NS_STYLE_DISPLAY_TABLE_FOOTER_GROUP == childDisplay->mDisplay) {      if (footerFrame) {        // We already have a footer frame and so this footer frame is treated        // like an ordinary body row group frame        return kidFrame;      }      footerFrame = kidFrame;    } else if (NS_STYLE_DISPLAY_TABLE_ROW_GROUP == childDisplay->mDisplay) {      return kidFrame;    }    // Get the next child    kidFrame->GetNextSibling(&kidFrame);  }  return nsnull;}