Adds event programming interface