def get_renumber_starting_ids_from_model(model):
    """
    Get the starting ids dictionary used for renumbering with ids greater than those in model.
    Parameters
    -----------
    model : BDF
        BDF object to get maximum ids from.
    Returns
    --------
    starting_id_dict : dict {str : int, ...}
        Dictionary from id type to starting id.
    """
    eid_max = max([
        max(model.elements.keys()),
        max(model.masses.keys()) if model.masses else 0,
        max(model.rigid_elements.keys()) if model.rigid_elements else 0,
    ])
    pid_max = max([
        max(model.properties.keys()),
        0 if len(model.properties_mass) == 0 else max(model.properties_mass.keys()),
    ])
    starting_id_dict = {
        'cid' : max(model.coords.keys()) + 1,
        'nid' : max(model.point_ids) + 1,
        'eid' : eid_max + 1,
        'pid' : pid_max + 1,
        'mid' : max(model.material_ids) + 1,
        'set_id' : max(model.sets.keys()) + 1 if model.sets else 1,
        'spline_id' : max(model.splines.keys()) + 1 if model.splines else 1,
        'caero_id' : max(caero.box_ids[-1, -1]
                         for caero in model.caeros.values()) + 1 if model.caeros else 1,
    }
    return starting_id_dict