<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _apply_volcanic_front_correction(mean, x_vf, H, imt):
 """ Implement equation for volcanic front correction as described in equation 3.5.2.-2, page 3-149 of "Technical Reports on National Seismic Hazard Maps for Japan" """

    V1 = np.zeros_like(x_vf)
    if imt.name == 'PGV':
        idx = x_vf <= 75
        V1[idx] = 4.28e-5 * x_vf[idx] * (H - 30)
        idx = x_vf > 75
        V1[idx] = 3.21e-3 * (H - 30)
        V1 = 10 ** V1
    else:
        idx = x_vf <= 75
        V1[idx] = 7.06e-5 * x_vf[idx] * (H - 30)
        idx = x_vf > 75
        V1[idx] = 5.30e-3 * (H - 30)
        V1 = 10 ** V1
    return np.log(np.exp(mean) * V1)