first functionalities : apply mutation