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

    module.exports = rx
  else if root._? and root.$?
    root.rx = factory(root._, undefined, root.$)
  else 
    throw "Dependencies are not met for reactive: _ and $ not found"

                    .addClass('updated-element').offset({top,left})
                    .width($(node).width()).height($(node).height())
                setTimeout (-> $(cover).remove() for cover in covers), 2000
            else if _.isString(contents) or _.isNumber(contents) or contents instanceof Element or
                contents instanceof RawHtml or contents instanceof $
              updateContents([contents])
            else
              throw new Error("Unknown type for element contents: #{contents.constructor.name} (accepted types: string, number, Element, RawHtml, jQuery object of single element, or array of the aforementioned)")
          if contents instanceof ObsArray
            rx.autoSub contents.onChange, ([index, removed, added]) ->
              elt.contents().slice(index, index + removed.length).remove()
