def METHOD_NAME(volume: int, hours: int) -> Optional[int]:
    # We don't support a lower granularity than 1 hour.
    if hours < 1:
        return None
    # Get current year and month
    year = datetime.now(tz=timezone.utc).year
    month = datetime.now(tz=timezone.utc).month
    try:
        # Get number of days in the month.
        _, days_in_month = monthrange(year=year, month=month)
        # We compute the number of hours in a month.
        hours_in_month = days_in_month * 24
        # We compute how many groups of hours can fit in a month.
        groups_of_hours = hours_in_month / hours
        # Given n groups we just multiply the volume per group of hours.
        return int(volume * groups_of_hours)
    except IllegalMonthError:
        return None