def METHOD_NAME(
    lower_edges_hz, upper_edges_hz, num_fft_bands=513, sample_rate=16000
):
    """
    Computes the Mel filterbank matrix given the lower and upper edge frequencies for each band.
    Args:
        lower_edges_hz (array-like): Lower edge frequencies for each Mel band.
        upper_edges_hz (array-like): Upper edge frequencies for each Mel band.
        num_fft_bands (int, optional): Number of FFT frequency bands. Default is 513.
        sample_rate (int, optional): Audio sample rate in Hz. Default is 16000.
    Returns:
        tuple: A tuple containing the Mel filterbank matrix, center frequencies, and FFT frequencies.
    """
    # Initialize the Mel filterbank matrix with zeros
    melmat = np.zeros((len(lower_edges_hz), num_fft_bands))
    # Compute the array of FFT frequency bins
    freqs = np.linspace(0.0, sample_rate / 2.0, num_fft_bands)
    # Compute the center frequencies for each Mel band
    center_frequencies_hz = np.mean([lower_edges_hz, upper_edges_hz], axis=0)
    # Iterate through each Mel band and compute the corresponding filter coefficients
    for imelband, (lower, center, upper) in enumerate(
        zip(lower_edges_hz, center_frequencies_hz, upper_edges_hz)
    ):
        # Compute the left slope of the triangular filter for this Mel band
        left_slope = (freqs >= lower) & (freqs <= center)
        melmat[imelband, left_slope] = (freqs[left_slope] - lower) / (
            center - lower
        )
        # Compute the right slope of the triangular filter for this Mel band
        right_slope = (freqs >= center) & (freqs <= upper)
        melmat[imelband, right_slope] = (upper - freqs[right_slope]) / (
            upper - center
        )
    return (melmat, center_frequencies_hz, freqs)