code: function expandShortNotation(node, lookup, options) {
  	const classNames = node.classList.reduce((out, cl) => {
  		let prefix, m;
  		const originalClass = cl;
  
  		// parse element definition (could be only one)
  		if (m = cl.match(reElement)) {
  			prefix = getBlockName(node, lookup, m[1]) + options.element + m[2];
  			out.add(prefix);
  			cl = cl.slice(m[0].length);
  		}
  
  		// parse modifiers definitions 
  		if (m = cl.match(reModifier)) {
  			if (!prefix) {
  				prefix = getBlockName(node, lookup, m[1]);
  				out.add(prefix);
  			}
  
  			out.add(`${prefix}${options.modifier}${m[2]}`);
  			cl = cl.slice(m[0].length);
  		}
  
  		if (cl === originalClass) {
  			// class name wasn’t modified: it’s not a BEM-specific class,
  			// add it as-is into output
  			out.add(originalClass);
  		}
  
  		return out;
  	}, new Set());
  
  	const arrClassNames = Array.from(classNames).filter(Boolean);
  	if (arrClassNames.length) {
  		node.setAttribute('class', arrClassNames.join(' '));
  	}
  }
docs: Expands short BEM notation, e.g. `-element` and `_modifier`
  @param  {Node} node      Parsed Emmet abbreviation node
  @param  {Map} lookup     BEM block name lookup
  @param  {Object} options