implemented splits and insertions.. in theory