function listenAll(target) {
var protos = [],
proto = target;
while (proto) {
protos.push(proto);
proto = Object.getPrototypeOf(proto)
}
protos
.reduce(function(props, proto) {
return props.concat(Object.keys(proto))
}, [])
.sort()
.filter(function(a) {
return a.toLowerCase().indexOf('on') === 0
})
.map(function(a) {
return a.substr(2)
})
.forEach(function(a) {
target.addEventListener(a, console.log.bind(console, a));
});
}