if (iid.Equals(NS_GET_IID(nsIComponentLoader))) { inst = new mozJSComponentLoader(); } else {
if (iid.Equals(NS_GET_IID(nsIComponentLoader))) inst = NS_STATIC_CAST(nsISupports *, new mozJSComponentLoader()); else
CreateJSComponentLoader(nsISupports *aOuter, const nsIID &iid, void **result){    if (!result)        return NS_ERROR_NULL_POINTER;    *result = 0;    mozJSComponentLoader *inst;    if (iid.Equals(NS_GET_IID(nsIComponentLoader))) {        inst = new mozJSComponentLoader();    } else {        return NS_ERROR_NO_INTERFACE;    }    if (!inst)        return NS_ERROR_OUT_OF_MEMORY;        NS_ADDREF(inst);  // Stabilize        nsresult rv = inst->QueryInterface(iid, result);        NS_RELEASE(inst); // Destabilize and avoid leaks. Avoid calling delete <interface pointer>        return rv;}