def calc_scoring_rate(
    shots_per_poss,
    three_make_rate,
    two_make_rate,
    three_attempt_rate,
    ft_attempt_rate,
    ft_make_rate,
):
    """Calculates points per possession from underlying rate statistics"""
    points_per_attempt = (
        3 * three_attempt_rate * three_make_rate
        + 2 * (1 - three_attempt_rate) * two_make_rate
    )
    return shots_per_poss * points_per_attempt + ft_attempt_rate * ft_make_rate