nsIDTD* theDTD;  NS_NewNavHTMLDTD(&theDTD);   NS_ASSERTION(theDTD, "Failed to create DTD");  mDTDDeque.Push(theDTD);  mHasViewSourceDTD=PR_FALSE; mHasXMLDTD=PR_FALSE;
  CSharedParserObjects()  :mDTDDeque(0),    mHasViewSourceDTD(PR_FALSE),   mHasXMLDTD(PR_FALSE)  {    //Note: To cut down on startup time/overhead, we defer the construction of non-html DTD's.     nsIDTD* theDTD;    NS_NewNavHTMLDTD(&theDTD);    //do this as a default HTML DTD...        // please handle allocation failure    NS_ASSERTION(theDTD, "Failed to create DTD");        mDTDDeque.Push(theDTD);         mHasViewSourceDTD=PR_FALSE;    mHasXMLDTD=PR_FALSE;  }