var createHTMLElement = function(tagName, attrs, content, safeContentInsert) {
        var e = null;

        // Create the element
        if ('name' in attrs) {
            try {
                // the IE way
                e = document.createElement('<' + tagName + ' name="' + escape(attrs['name']) + '" />');
            } catch(e) {
                // normal browsers way
                e = document.createElement(tagName);
                e.setAttribute('name', attrs['name']);
            }
        } else {
            // normal browsers way
            e = document.createElement(tagName);
        }

        // assign the attributes
        for (var attrName in attrs) {
            if (attrName.toLowerCase() == 'name') continue;
            e.setAttribute(attrName, attrs[attrName]);
        }

        // set the content
        if (content) {
            if (safeContentInsert) {
                e.innerText = content;
            } else {
                e.innerHTML = content;
            }
        }

        return e;
    };