class On {

    private On() {}

    public static Handle on(final Emitter obj, final String ev, final Emitter.Listener fn) {<FILL_FUNCTION_BODY>}

    public interface Handle {

        void destroy();
    }
}

        obj.on(ev, fn);
        return new Handle() {
            @Override
            public void destroy() {
                obj.off(ev, fn);
            }
        };
    
<no_super_class>