code: function getCssomForAllRootNodes(rootNodes, convertDataToStylesheet, timeout) {
  	const q = axe.utils.queue();
  
  	rootNodes.forEach(({ rootNode, shadowId }, index) =>
  		q.defer((resolve, reject) =>
  			loadCssom({
  				rootNode,
  				shadowId,
  				timeout,
  				convertDataToStylesheet,
  				rootIndex: index + 1
  			})
  				.then(resolve)
  				.catch(reject)
  		)
  	);
  
  	return q;
  }
docs: Deferred function for CSSOM queue processing on all root nodes
  
  @param {Array<Object>} rootNodes array of root nodes, where node  is an enhanced `document` or `documentFragment` object returned from `getAllRootNodesInTree`
  @param {Function} convertDataToStylesheet fn to convert given data to Stylesheet object
  @returns {Object} `axe.utils.queue`