function getWrapper(proto) {
    if (proto == null || proto === Object.prototype) {
        return Event
    }

    let wrapper = wrappers.get(proto);
    if (wrapper == null) {
        wrapper = defineWrapper(getWrapper(Object.getPrototypeOf(proto)), proto);
        wrappers.set(proto, wrapper);
    }
    return wrapper
}
function getWrapper(proto) {
    if (proto == null || proto === Object.prototype) {
        return Event
    }

    let wrapper = wrappers.get(proto);
    if (wrapper == null) {
        wrapper = defineWrapper(getWrapper(Object.getPrototypeOf(proto)), proto);
        wrappers.set(proto, wrapper);
    }
    return wrapper
}
function getWrapper ( proto ) { if ( proto == null || proto === Object . prototype ) { return Event } let wrapper = wrappers . get ( proto ) ; if ( wrapper == null ) { wrapper = defineWrapper ( getWrapper ( Object . getPrototypeOf ( proto ) ) , proto ) ; wrappers . set ( proto , wrapper ) ; } return wrapper }
Get the wrapper class of a given prototype.
@param {Object} proto The prototype of the original event to get its wrapper.
@returns {Function} The wrapper class.
@private
Get the wrapper class of a given prototype .