def decompress_longitude(compressed_longitude: str) -> float:
    """
    Decode longitude string from APRS compressed format (shifted ASCII in model.py 91) to a float.

    :param compressed_longitude: compressed APRS longitude string
    :return: longitude
    """

    converted_floats = []
    current_power = len(compressed_longitude) - 1

    for character in compressed_longitude:
        converted_floats.append(float(ord(character) - 33) * (91 ** current_power))
        current_power -= 1

    return -180 + (sum(converted_floats) / 190463)