                                                         render: { (n: DOMNode) in
                                                             return "<img src=\"/smilies/\(emote.1)\" alt=\"\" />" })))
         }
+
+        // Create .root description
+        let rootDescription = TagDescription(tagNeeded: false, Singular: false,
+                                             subelts: [],
+                                             allowAttr: false,
+                                             render: { n in
+                                                return n.renderChildren() })
+        for tag in tags {
+            rootDescription.subelts?.append(tag.1)
+        }
+        tags.append(("", .root, rootDescription))
+
         self.tagManager = TagManager(tags: tags);
     }
 


        if currentNode.type != .root {
            throw BBCodeError.unclosedTag(unclosedTagDetail(unclosedNode: currentNode))
        }

        return currentNode.renderChildren()
    }

}

                    ret.append("<br>\n")
                }
                continue
            } else if c == UnicodeScalar(13) { // \r
                lastWasCR = true
                ret.append("<br>\r")
                continue
