onEvent el'@(Elem el) et cb =
  do js_addEventListener el e cb
     return $ removeEvent el' e cb
  where
    e = pack (eventName et)
onEvent el'@(Elem el) et cb =
  do js_addEventListener el e cb
     return $ removeEvent el' e cb
  where
    e = pack (eventName et)
onEvent el'@(Elem el) et cb =
  do js_addEventListener el e cb
     return $ removeEvent el' e cb
  where
    e = pack (eventName et)