docs: function updateAttrs (oldVnode, vnode) {
  	  if (!oldVnode.data.attrs && !vnode.data.attrs) {
  	    return
  	  }
  	  var key, cur, old;
  	  var elm = vnode.elm;
  	  var oldAttrs = oldVnode.data.attrs || {};
  	  var attrs = vnode.data.attrs || {};
  	  // clone observed objects, as the user probably wants to mutate it
  	  if (attrs.__ob__) {
  	    attrs = vnode.data.attrs = extend({}, attrs);
  	  }
  	
  	  for (key in attrs) {
  	    cur = attrs[key];
  	    old = oldAttrs[key];
  	    if (old !== cur) {
  	      setAttr(elm, key, cur);
  	    }
  	  }
  	  for (key in oldAttrs) {
  	    if (attrs[key] == null) {
  	      if (isXlink(key)) {
  	        elm.removeAttributeNS(xlinkNS, getXlinkProp(key));
  	      } else if (!isEnumeratedAttr(key)) {
  	        elm.removeAttribute(key);
  	      }
  	    }
  	  }
  	}