requests and events don't share opcode space
library prototype + example of use