code: function checkMutations(mutations) {
  
  	// Skip iterating the nodes, if a run is already scheduled, to improve performance
  	if (scheduledCall && (scheduledCall._level < 3 || !scheduledCall._contexts)) {
  		return;
  	}
  
  	var addedNodes = [];
  	var stylesChanged = false;
  
  	var replacedSheets = [];
  	processedSheets.forEach(function(newNode) {
  		replacedSheets.push(newNode);
  	});
  
  	arrayFrom(mutations).forEach(function(mutation) {
  
  		addedNodes.push.apply(addedNodes, arrayFrom(mutation.addedNodes).filter(function(node) {
  			return node.nodeType === 1;
  		}));
  
  		arrayFrom(mutation.removedNodes).forEach(function(node) {
  			var index = addedNodes.indexOf(node);
  			if (index !== -1) {
  				addedNodes.splice(index, 1);
  			}
  			else if (
  				(node.tagName === 'LINK' || node.tagName === 'STYLE')
  				&& replacedSheets.indexOf(node) === -1
  			) {
  				stylesChanged = true;
  			}
  		});
  
  	});
  
  	addedNodes.forEach(function(node) {
  		if (node.sheet && replacedSheets.indexOf(node) === -1) {
  			stylesChanged = true;
  		}
  	});
  
  	if (stylesChanged) {
  		scheduleExecution(1);
  	}
  	else if (addedNodes.length) {
  		scheduleExecution(3, false, addedNodes);
  	}
  
  }
docs: Check DOM mutations and reprocess or reevaluate
  
  @param  {Array.<MutationRecord>} mutations