 
         if currentNode.type != .root {
             throw BBCodeError.unclosedTag(unclosedTagDetail(unclosedNode: currentNode))
-        }
-
-        return currentNode.renderChildren()
+        } else {
+            return (currentNode.description!.render!(currentNode))
+        }
     }
 
 }

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

        init(tags: [TagInfo]) {
            var tmptags = tags



            tmptags.sort(by: {a, b in
                if a.0.characters.count > b.0.characters.count {
