def point_to_range(point_location):
    """
    Convert a point location to a range location.

    :param point_location: A point location model complying object.
    :return: A range location model complying object.
    """
    if point_location.get("uncertain"):
        location = {
            "type": "range",
            "start": {"type": "point", "uncertain": True},
            "end": {"type": "point", "uncertain": True},
        }
    else:
        location = {
            "type": "range",
            "start": {"type": "point", "position": point_location["position"]},
            "end": {"type": "point", "position": point_location["position"] + 1},
        }
    if point_location.get("shift"):
        location["start"]["shift"] = point_location["shift"]
        location["end"]["shift"] = point_location["shift"]
    return location