fix optimisation