code: function insertBefore(parEl, el, refEl) {
  	var node = el._node, inDom = el.parentNode != null;
  
  	// el === refEl is asserted as a no-op insert called to fire hooks
  	var vm = (el === refEl || !inDom) ? node.vm : null;
  
  	if (vm != null)
  		{ fireHook(vm.hooks, "willMount", vm, vm.data); }
  
  	fireHook(node.hooks, inDom ? "willReinsert" : "willInsert", node);
  	parEl.insertBefore(el, refEl);
  	fireHook(node.hooks, inDom ? "didReinsert" : "didInsert", node);
  
  	if (vm != null)
  		{ fireHook(vm.hooks, "didMount", vm, vm.data); }
  }
docs: todo: hooks