trait Execute<T: EventListener> { // Required method fn execute<A: ActionContext<T>>(&self, ctx: &mut A); }