swap, split, insertion, find