function setAsHighDownDispatcher(el, asDispatcher) {
  var disable = asDispatcher === false;
  var extendedEl = el; // Make `highDownSilentOnTouch` and `onStateChange` only work after
  // `setAsHighDownDispatcher` called. Avoid it is modified by user unexpectedly.

  if (el.highDownSilentOnTouch) {
    extendedEl.__highDownSilentOnTouch = el.highDownSilentOnTouch;
  } // Simple optimize, since this method might be
  // called for each elements of a group in some cases.


  if (!disable || extendedEl.__highDownDispatcher) {
    // Emphasis, normal can be triggered manually by API or other components like hover link.
    // el[method]('emphasis', onElementEmphasisEvent)[method]('normal', onElementNormalEvent);
    // Also keep previous record.
    extendedEl.__highByOuter = extendedEl.__highByOuter || 0;
    extendedEl.__highDownDispatcher = !disable;
  }
}
@parame el
@param el.highDownSilentOnTouch
       In touch device, mouseover event will be trigger on touchstart event
       (see module:zrender/dom/HandlerProxy). By this mechanism, we can
       conveniently use hoverStyle when tap on touch screen without additional
       code for compatibility.
       But if the chart/component has select feature, which usually also use
       hoverStyle, there might be conflict between 'select-highlight' and
       'hover-highlight' especially when roam is enabled (see geo for example).
       In this case, `highDownSilentOnTouch` should be used to disable
       hover-highlight on touch device.
@param asDispatcher If `false`, do not set as "highDownDispatcher".