optimisation with module