         if rvID? && /^node\d+$/.test(rvID)
             if rv[@nodes.propName] == undefined
                 @nodes.add(rv, rvID)
+        #@_printMethodCall(target, method, args, rvID)
         rv
+
+    DOMPropertyUpdate : (params) ->
+        console.log "Processing DOMPropertyUpdate"
+        target = @nodes.get(params.targetID)
+        prop = params.prop
+        value = params.value
+        if /^node\d+$/.test(value)
+            value = @nodes.unscrub(value)
+        return target[prop] = value
+
+    _printMethodCall : (node, method, args, rvID) ->
+        args = @nodes.scrub(args)
+        nodeName = node.name || node.nodeName
+        argStr = ""
+        for arg in args
+            argStr += "#{arg}, "
+        argStr = argStr.replace(/,\s$/, '')
+        console.log "#{rvID} = #{nodeName}.#{method}(#{argStr})"
 
     #TODO: do i still need this or is this cruft?
     #TODO: at least rename to remove "Env"

    #   'targetID'
    #   'args'
    DOMUpdate : (params) ->
        target = @nodes.get(params.targetID)
        method = params.method
        rvID = params.rvID

        if target[method] == undefined
            throw new Error "Tried to process an invalid method: #{method}"

        rv = target[method].apply(target, args)
        if rv == undefined
            return
