                 throw new Error('jQuery object must wrap a single element') if child.length != 1
                 child[0]
               else
-                throw new Error("Unknown element type in array: #{child.constructor.name} (must be string, Element, RawHtml, or jQuery objects)")
+                throw new Error("Unknown element type in array: #{child.constructor.name} (must be string, number, Element, RawHtml, or jQuery objects)")
           updateContents = (contents) ->
             elt.html('')
             if _.isArray(contents)

            [arg1, arg2]
          else if _.isString(arg1) and arg2?
            [mkAtts(arg1), arg2]
          else if not arg2? and _.isString(arg1) or arg1 instanceof Element or  
              arg1 instanceof RawHtml or arg1 instanceof $ or _.isArray(arg1) or
              arg1 instanceof ObsCell or arg1 instanceof ObsArray
            [{}, arg1]

        #   (contents: Contents)
        #   (attrs: Object, contents: Contents)
        # where Contents is:
        #   string | number | Element | RawHtml | $ | Array | ObsCell | ObsArray
        [attrs, contents] =
          if not arg1? and not arg2?
            [{}, null]
