Added data argument to generic match_on