add wrapping for event handler
recursively box params