def METHOD_NAME(angle_array, l, m1, m2):
    """Calculates a single hyperspherical harmonical."""
    a = -(m1 - l / 2)
    b = -(m2 - l / 2)
    val = 0
    if (l - a) >= 0 and (l - b) >= 0 and a >= 0 and b >= 0:
        for k in np.arange(0, 4 * l + 1):
            if (b - k >= 0) and (a - k >= 0) and (l + k - a - b >= 0):
                denom = (
                    math.factorial(int(k))
                    * math.factorial(int(l + k - a - b))
                    * math.factorial(int(a - k))
                    * math.factorial(int(b - k))
                )
                for xi, zeta in angle_array:
                    val += (
                        (xi.conjugate()) ** k
                        * (zeta) ** (b - k)
                        * (zeta.conjugate()) ** (a - k)
                        * (-xi) ** (l + k - a - b)
                    ) / denom
        val *= np.sqrt(
            (
                math.factorial(int(a))
                * math.factorial(int(l - a))
                * math.factorial(int(b))
                * math.factorial(int(l - b))
            )
            / (l + 1)
        )
    return val / len(angle_array)