can we migrate to `el.tap()`