((w->callbacks[EWL_CALLBACK_INDEX(t)].mask & EWL_CALLBACK_TYPE_DIRECT) ? \ ((t < EWL_CALLBACK_MAX) ? /* this a regular callback */ \ w->callbacks[EWL_CALLBACK_INDEX(t)].list : \ /* nope, custom, check id */ \ ((((Ewl_Callback_Custom *)w->callbacks[EWL_CALLBACK_INDEX(t)].list).event_id == t) ? \ w->callbacks[EWL_CALLBACK_INDEX(t)].list : NULL)) : \ (w->callbacks[EWL_CALLBACK_INDEX(t)].list ? \ ((t < EWL_CALLBACK_MAX) ? \ w->callbacks[EWL_CALLBACK_INDEX(t)].list[i] : \ (((Ewl_Callback_Custom *)w->callbacks[EWL_CALLBACK_INDEX(t)].list[i].event_id == t) ? \ w->callbacks[EWL_CALLBACK_INDEX(t)].list[i] : NULL) \ : NULL))