More insertion modes a little refactoring