def round_to_nearest_point_5(value: float) -> float:
    """
    Rounds each top value to the nearest increment of 0.5

    Parameters
    ----------
    value : int
        each individual top value given

    Returns
    -------
    float
        A new top value expressed to the nearest 0.5 increment

    Notes
    -----
    This is surprisingly performant on scalar values.  Division is typically an
    expensive operation, but the multiply, round, and divide operations are at least
    twice as fast as other approaches (e.g. using if-statements with ``divmod()``).
    """

    return round(2 * value) / 2