better handling of mutation