Add mutation routine

Optimise step