import json


def get_car_parking_drift(car):
    """
    Gets properties that can change during a parking period but aren't
    considered to interrupt the parking.
    These are things like a car charging while being parked.
    :param car: must be formatted in normalized electric2go dict format
    :return: a hashable object
    """

    # Use json.dumps() because a dict is not hashable.
    # Sort keys to ensure deterministic key order in dumped JSON.
    # Note: using sort_keys prevents us from using e.g. ujson
    offer_drive_price = json.dumps(car['price_offer_details'], sort_keys=True)

    return (car['api_estimated_range'], car['fuel'],
            car['charging'], car['price_offer'], offer_drive_price)