optimisation bit added