NS_ASSERTION(nsnull != gElementFactoryArray, "no element factory array");
static void AddRefTable(){  if (0 == gNameSpaceTableRefs++) {    NS_ASSERTION(nsnull == gURIToIDTable, "already have URI table");    NS_ASSERTION(nsnull == gURIArray, "already have URI array");    gURIToIDTable = new nsHashtable();    gURIArray = new nsVoidArray();    nsString* xmlns = new nsString( NS_ConvertASCIItoUCS2(kXMLNSNameSpaceURI) );    nsString* xml = new nsString( NS_ConvertASCIItoUCS2(kXMLNameSpaceURI) );    nsString* xhtml = new nsString( NS_ConvertASCIItoUCS2(kXHTMLNameSpaceURI) );    nsString* xlink = new nsString( NS_ConvertASCIItoUCS2(kXLinkNameSpaceURI) );    nsString* html = new nsString( NS_ConvertASCIItoUCS2(kHTMLNameSpaceURI) );    nsString* xslt = new nsString( NS_ConvertASCIItoUCS2(kXSLTNameSpaceURI) );    gURIArray->AppendElement(xmlns);  // ordering here needs to match IDs    gURIArray->AppendElement(xml);    gURIArray->AppendElement(xhtml);     gURIArray->AppendElement(xlink);    gURIArray->AppendElement(html);     gURIArray->AppendElement(xslt);    nsStringKey xmlnsKey(*xmlns);    nsStringKey xmlKey(*xml);    nsStringKey xhtmlKey(*xhtml);    nsStringKey xlinkKey(*xlink);    nsStringKey htmlKey(*html);    nsStringKey xsltKey(*xslt);    gURIToIDTable->Put(&xmlnsKey, (void*)kNameSpaceID_XMLNS);    gURIToIDTable->Put(&xmlKey, (void*)kNameSpaceID_XML);    gURIToIDTable->Put(&xhtmlKey, (void*)kNameSpaceID_HTML);    gURIToIDTable->Put(&xlinkKey, (void*)kNameSpaceID_XLink);    gURIToIDTable->Put(&htmlKey, (void*)kNameSpaceID_HTML);    gURIToIDTable->Put(&xsltKey, (void*)kNameSpaceID_XSLT);  }  NS_ASSERTION(nsnull != gURIToIDTable, "no URI table");  NS_ASSERTION(nsnull != gURIArray, "no URI array");}