deletion and reinsertion