This modifies id_parts in place. I think it'd make more sense to make a copy so that anything that relied on the original id_parts doesn't break.