def METHOD_NAME(request, region_slug, language_slug):
    """
    List all events of the region and transform result into JSON
    :param request: The current request
    :type request: ~django.http.HttpRequest
    :param region_slug: The slug of the requested region
    :type region_slug: str
    :param language_slug: The slug of the requested language
    :type language_slug: str
    :return: JSON object according to APIv3 events endpoint definition
    :rtype: ~django.http.JsonResponse
    """
    region = request.region
    # Throw a 404 error when the language does not exist or is disabled
    region.get_language_or_404(language_slug, only_active=True)
    result = []
    now = timezone.now().date()
    combine_recurring_events = "combine_recurring" in request.GET
    for event in region.METHOD_NAME.prefetch_public_translations().filter(archived=False):
        if not event.is_past and (
            event_translation := event.get_public_translation(language_slug)
        ):
            if event.is_recurring and not combine_recurring_events:
                result.extend(iter(transform_event_recurrences(event_translation, now)))
            else:
                result.append(transform_event_translation(event_translation))
    return JsonResponse(
        result, safe=False
    )  # Turn off Safe-Mode to allow serializing arrays