public void addItsNatNormalEventListener(ItsNatNormalEventListenerWrapperImpl listenerWrapper) {
   EventTarget target = listenerWrapper.getCurrentTarget();
   ItsNatNormalEventListenerListSameTarget targetList =
       (ItsNatNormalEventListenerListSameTarget) eventListenersByTarget.get(target);
   if (targetList == null) {
     targetList = new ItsNatNormalEventListenerListSameTarget();
     eventListenersByTarget.put(target, targetList);
   }
   targetList.addItsNatNormalEventListener(
       listenerWrapper.getType(),
       listenerWrapper.getUseCapture(),
       listenerWrapper.getEventListener(),
       listenerWrapper);
 }
  public void removeItsNatNormalEventListener(
      ItsNatNormalEventListenerWrapperImpl listenerWrapper) {
    EventTarget target = listenerWrapper.getCurrentTarget();
    ItsNatNormalEventListenerListSameTarget targetList =
        (ItsNatNormalEventListenerListSameTarget) eventListenersByTarget.get(target);
    if (targetList == null) return;

    targetList.removeItsNatNormalEventListener(listenerWrapper);

    if (targetList.isEmpty()) eventListenersByTarget.remove(target);
  }